[C언어] 팩토리얼(n!)을 구하는 방법

ET의 공부/C언어|2020. 12. 12. 21:55

C언어에서 팩토리얼을 구하는 방법입니다.

 

팩토리얼은 계승이라하여 1부터 해당 값까지의 숫자를 더하는 것을 의미합니다.

예를들어 4!이면 1x2x3x4 = 24가 됩니다.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
int main() {
    int n, i;
    unsigned long long fact = 1;
    printf("정수 입력: ");
    scanf("%d"&n);
    
    if (n < 0)
        printf("팩토리얼은 0과 음수가 입력될수 없습니다.");
    else {
        for (i = 1; i <= n; ++i) {
            fact *= i;
        }
        printf("%d의 팩토리얼(계승) 값 = %llu\n", n, fact);
    }
    
    return 0;
}

 

 

계승은 값이 매우 클수 있으므로 unsigned long long 형을 사용하였습니다.

 

 

댓글()