Не работает прога(Python):
for s in range(100000):
x = s
L = x-30
M = x+30
while L != M:
if L > M:
L = L - M
else:
M = M - L
if (M == 30):
print(s)
Вот задание:
Ниже на пяти языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает число M. Известно, что x > 100. Укажите наименьшее такое (т. е. большее 100) число x, при вводе которого алгоритм печатает 30.
x = int(input())
L = x-30
M = x+30
while L != M:
if L > M:
L = L - M
else:
M = M - L
print(M)
Answers & Comments
Ответ:
(см. объяснение)
Объяснение:
У вас по условию x>100. Зачем вы с нуля идете? Зачем такой огромный диапазон значений?
Вот правильный код:
for s in range(101,121):
x = s
L = x-30
M = x+30
while L != M:
if L > M:
L = L - M
else:
M = M - L
if(M==30):
print(s)
Результат работы программы число 120.
Задание выполнено!