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..

Reply via email to