Статья

Задание 9: анализ программ

5 сентября 2026~8 минут10–11 класс

Пять минут на эту статью — и «Задание 9: анализ программ» станет понятнее. Внутри: теория без воды, пример, разбор задания и чек-лист самопроверки.

Что проверяет задание 9

Задание 9 часто кажется сложным из-за длинного текста программы: кажется, что нужно «увидеть» ответ сразу. На самом деле проверяется не скорость чтения, а умение пошагово выполнять алгоритм и аккуратно считать. Разберём удобный способ анализа, чтобы ты понимал, какие значения меняются, где срабатывает условие и как не потерять результат из-за одной невнимательной строки.

В программе обычно встречаются переменные, присваивания, арифметические операции, ветвления и циклы. Переменная хранит текущее значение, а знак присваивания ← заменяет старое значение новым. Например, после записи x ← x + 3 к прежнему значению x прибавляют 3.

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

Алгоритм разбора программы

Сначала определи начальные значения всех переменных. Затем прочитай команды сверху вниз. Если встречается условие, выясни, истинно оно или ложно, и выполни только соответствующую ветвь. В цикле отдельно посчитай число повторений или выпиши значения счётчика.

Удобно вести небольшую таблицу. В её столбцах можно указать номер шага, значение переменной и действие. Такой черновик занимает несколько строк, зато защищает от типичной ошибки: случайного использования уже изменённого значения вместо исходного.

ШагxyЧто произошло
Начало25Заданы исходные значения
155x увеличили на y
258y увеличили на 3

Если программа содержит несколько ветвей, сначала упростить условие: например, 7 ≥ 4 — истина, а 2 × 3 = 7 — ложь. Не перепрыгивай через строки внутри выбранной ветви: каждая команда может повлиять на следующий шаг.

Совет репетитора

Подписывай каждое новое значение переменной стрелкой: x: 2 → 5 → 10. Так видно всю цепочку изменений, а не только случайный промежуточный результат.

Разобранный пример

Рассмотрим программу, в которой есть последовательные присваивания и условие. Здесь важно заметить, что во второй строке используется уже новое значение x, полученное в первой строке.

x ← 4
\( y ← 2 \times x + 1 \)
если y ≥ 9, то
x ← y − 3
иначе
\( x ← y + 3 \)
вывести x

Сначала x получает значение 4. Затем вычисляем y: 2 × 4 + 1 = 9. Условие y ≥ 9 истинно, потому что 9 ≥ 9. Поэтому выполняется первая ветвь: x ← 9 − 3, то есть x становится равным 6. Команды из ветви «иначе» не выполняются. В конце программа выводит значение x, поэтому ответ равен 6.

Проверка в одну строку выглядит так: x = 4 → y = 9 → условие истинно → x = 6. Если бы условие было строгим y > 9, оно оказалось бы ложным, и результатом стало бы 12. Именно различие между > и ≥ часто определяет весь ответ.

Циклы и арифметика

В циклах не стоит сразу подставлять итоговое число. Сначала найди начальное значение счётчика, шаг изменения и последнее значение, при котором выполняется условие. Если команда повторяется 4 раза и каждый раз прибавляет 3, общий прирост равен 4 × 3 = 12.

Например, при x ← 1 и четырёх повторениях команды x ← x + 2 получаем последовательность 1 → 3 → 5 → 7 → 9. Начальное значение не считается результатом повторения: команда выполнилась четыре раза, поэтому прибавили 2 четыре раза.

В задачах могут встречаться целочисленное деление и остаток. Если они указаны, не заменяй их обычной дробью: 17 делить на 5 с остатком даёт целую часть 3 и остаток 2. При ручном подсчёте полезно писать промежуточные значения, даже если они кажутся очевидными.

Ловушка

Не путай число повторений с числом переходов счётчика. В цикле от 1 до 5 включительно пять значений: 1, 2, 3, 4, 5.

Если в выражении есть скобки, сначала выполняй их, затем умножение и деление, потом сложение и вычитание. Это особенно важно для отрицательных значений и выражений вроде −2²: следуй правилам, заданным в условии или используемом языке.

Типичные ошибки

Первая ошибка — чтение программы как обычного текста. Условие не «описывает ситуацию», а проверяет конкретные текущие значения. После каждой команды спроси себя: что изменилось и какое значение теперь используется дальше?

Вторая ошибка — выполнение обеих ветвей. В конструкции «если — иначе» выбирается только одна часть. Третья — смешение старого и нового значения: в выражении y ← x + 2 нужно использовать x на момент выполнения именно этой строки.

Четвёртая ошибка — неправильный порядок действий. Например, 6 + 2 × 3 = 12, а не 24. Пятая — потеря границы цикла: слова «пока», «до», «от» и «включительно» нужно читать особенно внимательно.

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

Что запомнить

Анализ программы строится по цепочке: начальные значения → команды сверху вниз → проверка условий → повторения цикла → вывод результата. Присваивание меняет значение переменной, а не создаёт новую копию. В условии внимательно различай >, <, ≥ и ≤, а в цикле считай именно фактическое число выполнений.

Если программа длинная, составь таблицу или цепочку переходов. Не полагайся на память и не округляй промежуточные результаты. Один аккуратный черновик обычно надёжнее нескольких попыток «посчитать быстрее».

Следующий шаг — зарегистрируйся и реши 5 заданий бесплатно. После этого сравни не только ответы, но и место ошибки: условие, цикл, арифметика или порядок действий.

Дополнительные материалы по подготовке можно найти в разделах ЕГЭ и ОГЭ, выбирая задания с похожими алгоритмами.

Что делать, если программа занимает много строк?

Раздели её на блоки: присваивания, условия и циклы. Выписывай только переменные, которые меняются или участвуют в следующем условии.

Нужно ли знать язык программирования?

Для задания достаточно понимать запись алгоритма, присваивания, условия, циклы и порядок арифметических действий. Глубокое знание конкретного языка обычно не требуется.

Как закрепить тему после разбора?

Реши несколько программ одного типа: сначала без ограничения времени, затем с таймером. После каждой ошибки перепиши цепочку значений и найди строку, на которой появился неверный результат.

Как проверить ответ перед сдачей?

Повтори финальные шаги, проверь знак сравнения, число итераций и название переменной в команде вывода. Если возможно, выполни программу вторым способом, например через таблицу.

Не оставляйте тему «прочитанной»

Понимание — половина дела. Вторая — практика с обратной связью: личный кабинет Просто Урок покажет, где вы ошибаетесь, и подтянет слабые места.

Важно. Материалы сайта носят информационно-образовательный характер и не являются публичной офертой (ст. 437 ГК РФ), индивидуальной консультацией или руководством к действию. Мы аккуратно работаем с фактами, но не гарантируем полную точность и актуальность: структура и правила экзаменов могут меняться — сверяйтесь с официальными источниками (ФИПИ, действующие кодификаторы и нормативные акты РФ). Администрация сайта не несёт ответственности за возможные неточности и за решения, принятые на основе материалов. Заметили неточность — напишите нам, мы исправим.