728x90
728x90
팩토리얼(Factorial)
팩토리얼(Factorial)
- 1부터 N까지 모두 곱한 수를 N 팩토리얼(Factorial)이라 부르며, 기호로는 N!로 나타낸다.
N! = 1 x 2 x 3 x ... x N
- 곱셈 연산을 할 때의 초깃값은 언제나 1이어야 한다.
- 초깃값이 0일 경우, 어떤 수를 곱해도 항상 0이 된다.
- 예) 5! = 1 × 2 × 3 × 4 × 5 = 120
예제
5! 구하기
#include <iostream>
using namespace std;
int main() {
int fact;
fact = 1; // 초깃값은 항상 1이어야 한다.
for (int i = 1; i <= 5; i++) {
fact *= i;
}
cout << fact << endl;
return 0;
}
120
5! 구하기 (재귀 함수 사용)
#include <iostream>
using namespace std;
int factorial(int n) {
if (n <= 1) {
return 1;
}
return n * factorial(n - 1);
}
int main() {
int fact;
cout << factorial(5) << endl;
return 0;
}
120
728x90
728x90
'Computer Science > 알고리즘' 카테고리의 다른 글
[Algorithm] 콜라츠 추측(Collatz Conjecture) ; 우박수(Hailstone Sequence), 3N + 1 Problem (0) | 2022.09.01 |
---|---|
[Algorithm] 소수(Prime Number) ; 쌍둥이 소수(Twin Primes), 메르센 소수(Mersenne Primes), 골드바흐의 추측(Goldbach's Conjecture) (0) | 2022.09.01 |
[Algorithm] 팰린드롬(Palindrome) (0) | 2022.09.01 |
[Algorithm] 완전제곱수(Perfect Square Number, 제곱수, 정사각수) (0) | 2022.08.31 |
[Algorithm] 완전수(Perfect Number), 부족수(Deficient Number), 과잉수(Abundant Number) (0) | 2022.08.31 |
[Algorithm] 배수(Multiple)와 약수(Divisor) (0) | 2022.08.31 |
[Algorithm] 가우스 계산법(Gaussian Calculation) (0) | 2022.08.31 |
[Algorithm] 알고리즘이란? (0) | 2022.06.24 |