재귀함수 (Recursive Function)
자기 자신을 호출하는 함수
- 복잡한 문제를 작은 문제로 나누어 해결할 때 사용
- 종료 조건이 있어야 무한 루프에 빠지지 않음
def recursive_function(parameters):
#종료 조건
if condition:
return result
#호출
return recursive_function(modified_parameters)
정수의 팩토리얼 계산
# 정수를 받아 그 정수의 팩토리얼을 계산하는 재귀함수
def fac(n):
if n < 0:
return 0
elif n == 0:
return 1
return n * fac(n-1)
n = int(input("n 값을 입력하세요: "))
fac(n)
숫자 리스트를 받아 재귀적으로 최대 값을 찾는 함수
def check_max(n):
if len(n) == 1:
return n[0]
return n[0] if n[0] > max(n[1:]) else check_max(n[1:])
n = [1, 43, 7, 9, 3]
check_max(n)