Определите, при каком наибольшем введённом значении переменной s программа выведет число, больше 1000 s = int(input()) n = 4 while s <= 400: s = s + 5 n = n + 8 print(n)
За каждую итерацию цикла n возрастает на 8. Нам нужно минимум 125 итераций, чтоб получить n > 1000, потому что 4 + 8*125 > 1000, а 4 + 8*124 < 1000. Можно и больше 125 итераций, об этом дальше
За каждую итерацию цикла s растёт на 5, пока не превысит 400. Нам нужно как минимум 125 итераций, как мы выяснили, а для этого стартовое значение s должно быть больше чем
400 - 5*125 = 400 - 625 = -225,
но больше или равно
400 - 5*124 = 400 - 620 = -220.
Ну и на отрезке (-225; -220] максимум найти несложно.
Если число итераций N будет больше 125, то больше будет разница 400 - 5*N , а значит меньше будет стартовое значение S, что нас не устраивает.
-220
Объяснение:
пользовался программой на Python'е
ans = -9999999
for i in range(-1000, 1000):
s = i
n = 4
while s <= 400:
s = s + 5
n = n + 8
if n > 1000:
ans = max(ans, i)
print(ans)
За каждую итерацию цикла n возрастает на 8. Нам нужно минимум 125 итераций, чтоб получить n > 1000, потому что 4 + 8*125 > 1000, а 4 + 8*124 < 1000. Можно и больше 125 итераций, об этом дальше
За каждую итерацию цикла s растёт на 5, пока не превысит 400. Нам нужно как минимум 125 итераций, как мы выяснили, а для этого стартовое значение s должно быть больше чем
400 - 5*125 = 400 - 625 = -225,
но больше или равно
400 - 5*124 = 400 - 620 = -220.
Ну и на отрезке (-225; -220] максимум найти несложно.
Если число итераций N будет больше 125, то больше будет разница 400 - 5*N , а значит меньше будет стартовое значение S, что нас не устраивает.
ответ: -220