according to me the range of int has to deal it with try to take long unsigned int it may work to a larger range.
--- On Fri, 13/3/09, ruhatadiyaman <[email protected]> wrote: > From: ruhatadiyaman <[email protected]> > Subject: [c-prog] an example about factorial numbers > To: [email protected] > Date: Friday, 13 March, 2009, 12:22 PM > i wrote a code which calculates the factorials of 1-20. it > gives the correct result until 13 but it is not correct > after 13. it even gives negative results. > this is my code > /*faktorial*/ > #include<stdio.h> > int main() > { > int x, y, fak; > > for(x=1;x<=20;x++){ > printf("%d!\t", x); > fak=x; > if(x>=2){ > for(y=x;y>=2;y--){ > fak=fak*(y-1); > } > } > printf("%d\n", fak); > } > getch(); > return 0; > } > why would it be? > best regards.. New Email names for you! Get the Email name you've always wanted on the new @ymail and @rocketmail. Hurry before someone else does! http://mail.promotions.yahoo.com/newdomains/aa/
