РУҚА
25

Решение: Цикл с целочисленным делением

ЕГЭ · Информатика · Задание 25 · Основы программирования
ПовышеннаяФИПИ964B9FКороткий ответ≈ 2 минутыРазбор в 3 шагаОтвет сверен с ключом
Условие

Запишите число, которое будет напечатано в результате выполнения следующей программы. Для удобства программа представлена на пяти языках программирования.

Python
1s = 100
2n = 1
3while s > 0:
4    s = s // 4
5    n = n * 2
6print(n)
Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

3 шага
1

В начале работы программы $s = 100$, $n = 1$. На каждой итерации $s$ делится на $4$ нацело, а $n$ умножается на $2$.

$$s \leftarrow s // 4,\quad n \leftarrow 2n$$
2

Последовательно получаем значения переменной $s$:

$$100 \to 25 \to 6 \to 1 \to 0$$

До получения нуля цикл выполняется 4 раза. Поэтому значение переменной $n$ увеличивается в 4 раза по степени двойки.

$$n = 1 \cdot 2^4 = 16$$
Ответ
16
16
так ответ выглядит в бланке

Где здесь ошибаются

Использовать обычное деление вместо целочисленного.

Остановить цикл после получения $s = 1$, не выполнив последнюю итерацию.

Посчитать количество итераций как 3 вместо 4.

Закрепить приёмВ теме «Основы программирования» ещё 159 задач — с ответом и таким же разбором.
Тренироваться

Как решать задание 25 ЕГЭ, информатика

Разбор этой задачи разложен на 3 шага: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Основы программирования»: в ней 160 задач, и у каждой есть такой же разбор. Регистрация не нужна.