상세 컨텐츠

본문 제목

[Python 유클리드호제법 및 팩토리얼] 최대 공약수 및 팩토리얼 재귀함수 적용 전과 적용 후

Python

by donggyu1998 2022. 2. 13. 18:32

본문

반응형

이전 게시글 : [Python 유클리드 호제법] 최대 공약수, 최대 공배수 구하기 :: 코딩 연구소 (tistory.com)

 

💡 이전 게시글 코드 

def gcd(a, b):
    
    while b > 0:
        
        a, b = b, a % b
        
    return a

print (gcd(12, 6))
print (gcd(24, 12))
print (gcd(14, 4))
# 출력 결과 6, 12, 2

 

💡 재귀 함수 적용 코드

def gcd(a, b):
    
    if b > 0:
        gcd(b, a % b)
    else:
    	return a
    
print (gcd(12, 6))
print (gcd(24, 12))
print (gcd(14, 4))

 

재귀함수 적용 전 코드는 while loop 조건이 b > 0 큰 경우이다. 

재귀함수를 적용하더라도 조건은 크게 달라지지 않는다. 

 

그렇기 때문에 gcd (최대공약수) 함수를 반복 호출하게 하면된다. 

반응형

관련글 더보기