문제
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 N(0 ≤ N ≤ 12)가 주어진다.
출력
첫째 줄에 N!을 출력한다.
예제 입력 1
10
예제 출력 1
3628800
예제 입력 2
0
예제 출력 2
1
함수와 가정문을 사용해 만든 코드
n = int(input())
def factorial(n):
result = 1
if n > 0:
result = n * factorial(n - 1)
return result
print(factorial(n))
반복문을 이용한 코드
n = int(input())
result = 1
if n > 0:
for i in range(1, n + 1):
result *= 1
print(result)
알았던 내용
반복문이나 함수를 사용하여 재귀를 할 수 있다는 것.
몰랐던 내용
정확히 반복문으로 팩토리얼을 구현하는 방법을 몰랐다. 또한 함수와 가정문을 이용해서 팩토리얼을 구현하는 코드를 어설프게 알았다.
배운 내용
함수와 가정문, 반복문으로 재귀함수를 사용할 수 있게됨으로서 더 복잡한 계산 연산식을 더 수월하게 할 수 있게되었다.