РУҚА
6

Шешімі: Минимальное значение переменной

ЕГЭ · Информатика · Тапсырма 6 · Бағдарламалау негіздері
КүрделіФИПИD2E3CAҚысқа жауап≈ 4 минутТалдау 4 қадамЖауап сверен с ключом
Условие

Определите, при каком наименьшем введённом значении переменной $s$ программа выведет число 8. Для Вашего удобства программа представлена на четырёх языках программирования.

Python
1s = int(input())
2s = (s - 21) // 10
3n = 1
4while s >= 0:
5    n = n * 2
6    s = s - n
7print(n)
Тапсырманы ашып, өзіңіз шешіңіз
Дальше ответЕгер әлі шешіп жатсаңыз – кеңестерден бастаңыз: олар жауапқа жетелейді, бірақ оны ашпайды.
К подсказкам

Шешім по шагам

4 қадам
1

Обозначим через $s_0$ значение переменной после целочисленного деления. В начале цикла $n = 1$.

$$s_0 = (s - 21) // 10$$
2

На первой итерации переменная $n$ принимает значение 2, на второй — 4, на третьей — 8. Чтобы цикл выполнился три раза, перед третьей итерацией должно быть $s_0 - 2 - 4 \geq 0$.

$$s_0 \geq 6$$
3

После третьей итерации из $s_0$ вычитается 8. Чтобы четвёртая итерация не выполнялась, необходимо $s_0 - 2 - 4 - 8 < 0$, то есть $s_0 < 14$.

$$6 \leq s_0 < 14$$

Для наименьшего входного значения достаточно найти минимальное $s$, при котором $(s - 21) // 10 \geq 6$.

$$(s - 21) // 10 \geq 6 \Rightarrow s - 21 \geq 60 \Rightarrow s \geq 81$$
Жауап
81
81
так ответ выглядит в бланке

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

Забывают, что значение $n$ изменяется до вычитания из переменной $s$.

Считают, что для вывода 8 цикл должен выполниться төрт раза.

Не учитывают целочисленное деление при преобразовании исходного значения $s$.

Закрепить приёмВ теме «Бағдарламалау негіздері» ещё 159 тапсырма — жауабымен және дәл осындай талдауымен.
Жаттығу

Тапсырманы қалай шешу керек 6 ЕГЭ, информатика

Бұл есептің талдауы келесіге бөлінген: 4 шага: видно, откуда берётся каждое число и где теряется балл. Жауап есептеулердің жанында келтірілген, олардың орнына емес.

Задача из темы «Бағдарламалау негіздері»: в ней 160 задач, и у каждой есть такой же разбор. Тіркеу қажет емес.