Решение: Число итераций цикла
Определите, при каком наименьшем введённом значении переменной $s$ программа выведет число 64. Для Вашего удобства программа представлена на языке Python.
1s = int(input()) 2n = 1024 3while s > 15: 4 s = s - 5 5 n = n // 2 6print(n)
Решение по шагам
5 шаговНачальное значение переменной $n$ равно 1024. После каждого выполнения цикла оно целочисленно делится на 2.
$$1024 \to 512 \to 256 \to 128 \to 64$$Чтобы программа вывела 64, цикл должен выполниться ровно 4 раза.
Для выполнения четвёртой итерации после первых трёх итераций условие цикла должно оставаться истинным:
$$s - 15 > 15$$После четвёртой итерации условие должно стать ложным:
$$s - 20 \le 15$$Получаем $s > 30$ и $s \le 35$. Наименьшее целое значение $s$ — 31.
Где здесь ошибаются
Считать, что цикл должен выполниться 5 раз.
Не учитывать проверку условия while перед каждой итерацией.
Использовать обычное деление вместо целочисленного, хотя при данных значениях результат совпадает.