본문으로 바로가기

Quiet Time 조용한 시간 - python 재귀함수로 factorial구하는 함수 만들기


오늘의 조용한 시간은 재귀함수 만들기다.


parameter가 1개인 함수를 이용해서 팩토리얼을 구하는건데 파라메터로 들어온 인자값(argument)이 0이 아니면 계속 1씩 줄여가면서 곱하는 로직이다.


나도 이게 연습이 잘 안되어 있어서 막상 바로 짜라고 하면 바로는 못짜는데 요즘에 함수형 프로그래밍이랑 리액티브 프로그래밍을 계속 하다보니 이해도가 조금 올라간 기분이다.


1
2
3
4
5
6
7
8
9
def factorial(n):
    if(n == 0):
        print('')
        return 1
    else:
        print(n, end=' ')
        return n * factorial(n - 1)
 
print(factorial(5))
cs

l0
5!을 구하는 코드이다.


이게 함수는 값을 return 하는게 맞지만 재귀 일 때는 값 대신 식을 return한다고 생각하면 좀 더 이해하기 쉬웠다.


end.






댓글을 달아 주세요