안녕하세요, 이번 포스팅은 파이썬 최대공약수 최소공배수 구하는 법 예제 코드 대해서 작성하도록 하겠습니다.
파이썬에서는 최대공약수와 최소공배수를 계산하기 위한 다양한 방법들이 있는데 가장 기본적인 방법은 gcd와 lcm 함수를 활용하는 것입니다.
그럼 파이썬 최대공약수 최소공배수 구하는 법 예제 코드 대해서 자세히 알아보도록 하겠습니다.
목차
최대공약수 gcd 함수 활용
먼저 최대공약수를 구하는 데 활용할 수 있는 gcd 함수에 대해서 자세히 알아보도록 하겠습니다.
1) gcd 함수란?
gcd 함수는 두 숫자의 최대공약수를 구하는 함수로, 파이썬의 math 라이브러리에 포함되어 있습니다.
참고로 최대공약수는 두 수를 나누어 떨어지는 가장 큰 수를 의미합니다.
예를 들면, 50와 75의 최대공약수는 25입니다.😊
2) gcd 함수 예제 코드
그럼 위에서 말한 50과 75의 최대공약수를 파이썬 코드를 이용하여 구해보도록 하겠습니다.
일단 파이썬에서 gcd 함수를 사용하기 위해서는 먼저 math 라이브러리를 import를 해야 합니다.
gcd 함수를 이용한 파이썬 예제 코드는 아래와 같습니다.
from math import gcd
result = gcd(50, 75)
print(result) # 출력: 25
위의 코드를 실행을 하게 되면 50와 75의 최대공약수인 25가 출력이 되는 것을 확인할 수 있습니다.

최소공배수 lcm 함수 활용
다음은 최소공배수를 구하는 데 활용할 수 있는 lcm 함수에 대해서 자세히 알아보도록 하겠습니다.
1) lcm 함수란?
파이썬에는 최소 공배수를 구하는 lcm 함수는 기본적으로 제공되지 않기 때문에 직접 함수 형태로 만드셔야 합니다.
참고로 두 수의 공배수 중에 가장 작은 공배수가 바로 최소공배수입니다.
공배수를 나열해서 최소공배수를 구할 수도 있지만 lcm 함수의 원리는 두 수의 곱을 두 수의 최대공약수로 나눈 값으로 최소공배수를 얻는 개념입니다. 🤔
그럼 해당 코드를 구현을 해보도록 하겠습니다.
2) lcm 함수 예제 코드
먼저, lcm 함수를 직접 구현해 봅시다.
gcd 를 활용해야 하기 때문에 파이썬 math 라이브러리도 같이 활용해서 구현해보도록 하겠습니다.
from math import gcd
def lcm(a, b):
return abs(a*b) // gcd(a, b)
위에서 작성한 코드는 두 수의 곱을 두 수의 최대공약수로 나눠서 최소공배수를 반환하는 함수 형태의 코드입니다.
이제 이 함수를 사용해 두 수의 최소공배수를 구해보겠습니다,
result = lcm(12, 15)
print(result) # 출력: 60
위의 코드에서는 12와 15의 최소공배수를 구하였고, 그 결과로 60이 출력 되는 것을 확인 할 수 있습니다.

gcd lcm 함수 추가 예제 코드
위에서 설명 드린 gcd와 lcm 함수를 활용한 추가 예제 코드를 작성해보도록 하겠습니다.
파이썬에서 최대공약수와 최소공배수를 효과적으로 활용하면 많은 문제를 쉽게 해결할 수 있습니다.🙂
추가 예제 코드로 여러 개의 숫자가 있는 배열에서 모든 숫자의 최대공약수와 최소공배수를 구하는 문제를 푸는 코드를 구성해보도록 하겠습니다.
from math import gcd
def find_gcd(arr):
result = arr[0]
for num in arr[1:]:
result = gcd(result, num)
return result
def find_lcm(arr):
result = arr[0]
for num in arr[1:]:
result = abs(result*num) // gcd(result, num)
return result
함수 형태로 구현을 했기 때문에, 해당 함수만 활용을 하면 여러 개의 숫자가 들어있는 배열에서 최대공약수와 최소공배수를 쉽게 출력을 할 수 있습니다.
결론
이번 포스팅에서는 파이썬 최대공약수 최소공배수 구하는 법 예제 코드 대해서 알아보았습니다.
특히, gcd 함수와 lcm 함수의 활용 방법을 중점적으로 다루었습니다.😃
실제 문제 상황에서 이러한 함수들을 어떻게 활용할 수 있는지에 대한 예제를 통해 학습의 효과를 높일 수 있었습니다.👍
파이썬을 사용하면 복잡한 문제도 간단한 함수를 활용하여 쉽게 해결할 수 있습니다.
앞으로도 이러한 유용한 파이썬 기능들을 계속해서 학습하고, 실제 문제 해결에 활용하는 경험을 쌓아보시기 바랍니다.😊
이번 포스팅이 여러분들에게 도움이 되었기를 바라며, 다음 포스팅에서 또 다른 유용한 정보로 찾아뵙겠습니다.감사합니다!🙌









