최소공배수

서진영·2022년 3월 3일
0

오늘은 공배수, 최소공배수의 정의와 파이썬으로 공배수, 최소공배수를 도출하는 방법에 대해 알아보겠습니다.

공배수 : 두 개 이상의 수에서 공통된 배수를 공배수라고 합니다.

예를 들어, 3과 5의 공배수는 15,30 ... 이 될 것입니다.

최소공배수 : 공배수 중 가장 작은 수를 최소공배수라고 합니다.

예를 들어, 3과 5의 공배수는 15,30 ... 이 되엇으니 가장 작은 수인 15가 최소공배수가 될 것입니다.

*소인수분해를 이용하면 최소공배수 및 공배수를 구할 수 있습니다.

이 그림을 참고하면 좋을 것입니다.

** 좀 더 편리하게 최소공배수를 구하는 방법이 있습니다. 바로 소수로 나눗셈을 하는 것입니다.

이 그림을 참고하면 좋을 것입니다.

파이썬으로 두 개의 수를 입력하면 최소공배수를 출력하는 코드를 작성해봅시다.

num1 = int(input('1보다 큰 정수 입력: '))
num2 = int(input('1보다 큰 정수 입력: '))
maxnum = 0

for i in range(1, (num1 +1)):
if num1 % i == 0 and num2 % i ==0:
print('공약수: {}'.format(i))
maxNum = i

print('최대공약수: {}'.format(maxNum))

minNum = (num1*num2) // maxNum
print('최소공배수: {}'.format(minNum))

*수 a와 수 b를 곱해주고 a,b의 최대공약수로 나눠주면
최소공배수가 되는구나!

---세 개의 수를 입력하면 최소공배수를 출력하는 코드를 작성하자

num1 = int(input('1보다 큰 정수 입력: '))
num2 = int(input('1보다 큰 정수 입력: '))
num3 = int(input('1보다 큰 정수 입력: '))
maxnum = 0

for i in range(1, (num1 +1)):
if num1 % i == 0 and num2 % i ==0:
maxNum = i

print('최대공약수: {}'.format(maxNum))

minnum = (num1 * num2) // maxNum
print('{}, {}의 최소공배수 : {}.format(num1, num2, minNum))

newNum = minNum (<===== num1, num2의 최소공배수를 newNum로 선언!)

fir i in range(1, (newNum + 1)):
if newNum % i == 0 and num3 % i == 0:
maxNum = i

print('최대공약수: {}'.format(maxNum))

minNum = (newNum * num3) // maxNum

print('{}, {}, {}의 최소공배수 : {}'.format(num1, num2, num3, minNum))

profile
나는 서진영이라고 합니다

0개의 댓글