|
안녕하세요
팩토리얼수(9! = 9*8*7*6...*2*1)를 구할려고 만들었는데요
왠만해서는 돼는데, 일정수 이상 큰 수를 넣으면 값이 무조건 0이 되어버립니다.
30정도 넣으면 돼고 100정도 넣으면 0
이거 제대로 나오게 할수 있는 방법 없을까요?
그리고 밑에 주석으로 단 영어는 제 멋대로 한거라 -_-
틀린부분 지적 부탁드립니다.
(주석부분과 코드부분 둘 다요~)
만든것=========================================================================
/* making factorial function in running a large number */
#include <stdio.h>
#define MAX 100
main()
{
unsigned long int Num_Factorial = 0;
/* variable initialize, use by Factorial Number */
unsigned long int count = 0;
char line[MAX];
printf("Enter the Number to process factorial algorithm :");
fgets(line, sizeof(line), stdin);
sscanf(line, "%d", &Num_Factorial);
for (count = Num_Factorial-1; count > 1; --count)
Num_Factorial *= count;
printf("\nresult : %lu\n", Num_Factorial);
return 0;
}
============================================================================
|