Информатика, вопрос задал whyblock , 2 года назад

на Питоне!!! даны две дроби a/b и c/d (a,b,c,d - натуральные числа). составить программу деления дроби на дробь. ответ должен быть несократимой дробью. использовать подпрограмму алгоритма Евклида для определения НОД

Ответы на вопрос

Ответил lasushin123
0

num1 = input().split('/') #1/2 ['1', '2']

num2 = input().split('/') #3/4 ['3', '4']

num2.reverse() #['4', '3']

num3 = []

num3.append(int(num1[0]) * int(num2[0])) # [4]

num3.append(int(num1[1]) * int(num2[1])) # [4, 6]

def recursive(l):

~~~~for i in range(2, max(l)//2+1):

~~~~~~~~if l[0]%i == 0 and l[1]%i == 0:

~~~~~~~~~~~~l[0] = l[0]//i

~~~~~~~~~~~~l[1] = l[1]//i

~~~~~~~~~~~~l = recursive(l)

~~~~if l[0] == l[1]: l = [1, 1]

~~~~return l

print('/'.join([str(i) for i in recursive(num3)]))

Новые вопросы