최소공배수

levn94·2023년 3월 28일
0

알고리즘

목록 보기
9/9
num1 = int(input())
num2 = int(input())

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

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

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

최대공약수를 우선 구하고, 두 수의 곱에 최대공약수를 나눔



세 수의 최소공배수 구하기

두 수의 최대공약수 -> 두 수의 최소공배수 ->
두 수의 최소공배수와 나머지 숫자의 최대공약수 -> 세 수의 최소공배수

num1 = int(input())
num2 = int(input())
num3 = int(input())


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

def lcm (num1, num2):    
    return num1 * num2 // gcd(num1,num2)

print('세 수의 최소공배수 : {}'.format(lcm(lcm(num1, num2), num3)))
profile
Data Science & Engineering

0개의 댓글