BEAKJOON

백준(10872번 팩토리얼)풀이 C++

Shin_jisoo 2021. 1. 15. 00:27
728x90

www.acmicpc.net/problem/10872

 

10872번: 팩토리얼

0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.

www.acmicpc.net

1) 주석 없는 VERSION

#include <iostream>
#include <cmath>
#include <stdio.h>

using namespace std;

int fac(int n) {

	if (n <= 1) {
		return 1;
	}

	return n * fac(n - 1);

}

int main() {
	int n;
	cin >> n;

	int ans;
	ans = fac(n);

	cout << ans;
}

 

2) 주석 있는 VERSION

#include <iostream>
#include <cmath>
#include <stdio.h>

using namespace std;

int fac(int n) {

	if (n <= 1) {
		return 1;
	}

	// 자기 자신과 자신보다 하나 작은 수를 곱하는 것을
	// 재귀 함수를 이용해 n 이 1보다 작아질 때까지 반복
	return n * fac(n - 1);

}

int main() {
	int n;
	cin >> n;

	int ans;
	// 함수 호출
	ans = fac(n);

	cout << ans;
}