Guest User

Untitled

a guest
Apr 25th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.71 KB | None | 0 0
  1. #include<stdio.h>
  2. #define MAX 10000
  3. void multiply(int num[],int *int_len,int val) {
  4.     int i=0,temp=0,x,count=*int_len;
  5.     for(i=0;i<*int_len;i++) {
  6.         x=num[i] * val + temp;
  7.         num[i] = x%10;
  8.         temp=x/10;
  9.     }
  10.    
  11.     if(temp != 0) {
  12.         while(temp > 0) {
  13.             num[count++]=temp%10;
  14.             temp/=10;
  15.         }
  16.     }
  17.     *int_len=count;
  18. }
  19. int main()
  20. {
  21.     int num[MAX],len=0,i,number,temp;
  22.     printf(" Enter a number whose factorial is to be found (0-10000): ");
  23.     scanf("%d",&number);
  24.     temp = number;
  25.     while(number > 0) {
  26.         num[len++] = number % 10;
  27.         number/=10;
  28.     }
  29.     for(i=1;i<temp;i++) {
  30.         multiply(num,&len,i);
  31.     }
  32.     printf(" The factorial : ");
  33.     for(i=len-1;i>=0;i--) {
  34.         printf("%d",num[i]);
  35.     }
  36.     printf("\n");
  37. }
Add Comment
Please, Sign In to add comment