728x90
문제는 더보기!
더보기
문제
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다.
출력
첫째 줄에 N!을 출력한다.
예제 입력 1 복사
10
예제 출력 1 복사
3628800
예제 입력 2 복사
0
예제 출력 2 복사
1
for문을 이용하여 단순하게 구현할 수도 있다!!
a = int(input())
result = 1
for i in range(a):
while a !=0:
result *= a
a -= 1
print(result)
하지만 파트가 재귀함수이므로 재귀함수로도 풀어보았다.
재귀함수적으로 생각해서 5면 5*4만하고, 4면 4*3만 하는식으로 단순하게 끊어서 작동하게끔 구현해보았다.
def factorial(N):
if N in (0,1):
return 1
return N * factorial(N-1)
print(factorial(int(input())))
728x90
'Python > 백준' 카테고리의 다른 글
2775_부녀회장이 될테야 (0) | 2021.11.20 |
---|---|
10870_피보나치 수열 (0) | 2021.11.20 |
1002_터렛_백준오류가 있는 듯 하다??! (0) | 2021.11.19 |
3053_택시기하학 (0) | 2021.11.19 |
4153_직각삼각형 (0) | 2021.11.18 |