import random
num1= random.randint(100,1000)
num2= random.randint(100,1000)
print(f'num1:{num1}')
print(f'num2:{num2}')
maxNum = 0
for n in range(1,min(num1,num2)+1):
if num1 % n == 0 and num2 % n == 0:
print(f'공약수:{n}')
maxNum = n
print(f'최대공약수: {maxNum}')
if maxNum == 1 :
print(f'{num1}과 {num2}는 서로소이다.')
import random
num1= random.randint(100,1000)
num2= random.randint(100,1000)
print(f'num1:{num1}')
print(f'num2:{num2}')
num1List = []
num2List = []
i = 0
minNum = 0
flag = True
for i in range(0, i):
num1 = num1 * (i+1)
num1List.append(num1)
i += 1
for n2 in range(0, 1000000):
num2 = num2 * (n+1)
num2List.append(num2)
n += 1
if num1List.count(num2List) == 1:
flag = False
break
minNum = num2
print(f'최소공배수: {minNum}')
ㄴ 구하다가 포기... ㅠㅠ
최소공배수구하는 더 간단한 방법: 최소공배수는 최대공약수를 구한 뒤
num1과 num2를 곱한 뒤 최대공약수로 나눈 몫을 구하면 된다.
import random
num1= random.randint(100,1000)
num2= random.randint(100,1000)
print(f'num1:{num1}')
print(f'num2:{num2}')
maxNum = 0
for n in range(1,min(num1,num2)+1):
if num1 % n == 0 and num2 % n == 0:
print(f'공약수:{n}')
maxNum = n
print(f'최대공약수: {maxNum}')
minNum = (num1 * num2) // maxNum
print(f'최소공배수: {minNum}')
num = int(input('10진수 입력: '))
print('2진수: {}'.format(bin(num)))
print('8진수: {}'.format(oct(num)))
print('16진수: {}'.format(hex(num)))