Найбі́льший спі́льний дільни́к (НСД) — найбільше натуральне число, на яке ці числа діляться без залишку.
Найменше спільне кратне (НСК) для (a, b) — найменше натуральне число яке ділиться без залишку на обидва числа a, b.
Варіант перший:
a = int(input('a = '))
b = int(input('b = '))
def evklid(a, b): # Функція знаходження найбільшого спільного дільника
if a % b == 0:
return b
else:
return evklid(b, a%b)
print (evklid(a, b))
nsk = a * b // evklid(a, b) # Знаходимо найменше спільне кратне
print (nsk)
Варіант другий:
a = int(input('a = '))
b = int(input('b = '))
def nsd(a, b): # Функція знаходження найбільшого спільного дільника
while a*b != 0:
if a >= b:
a = a % b
else:
b = b % a
return a + b
print (nsd(a, b))
nsk = a * b // nsd(a, b) # Знаходимо найменше спільне кратне
print (nsk)