문제

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

def factorial(n):
    if n>1:
        return n*factorial(n-1)
    else:
        return 1

 

팩토리얼의 정의는 n! = n * (n-1) * (n-2) * .... * 1 이다

n을 하나씩 낮춰가면서 곱하는 형태가 동일하기 때문에 재귀함수를 이용하여 n*factorial(n-1)을 사용했다.

문제는 0! =1. 이도 맞춰주기 위해 if문을 사용했다. 

'Algorithm' 카테고리의 다른 글

programmers #[1차] 비밀지도  (0) 2021.08.19
백준 5692번 #팩토리얼 진법  (0) 2021.08.17
programmers #소수찾기  (0) 2021.08.10
programmers #다리를 지나는 트럭  (0) 2021.08.08
programmers #기능개발  (0) 2021.08.08

+ Recent posts