Ветвление, циклы, массивы: теория для ОГЭ (задания 5, 6, 15, 16)
Коротко о главном
Любой алгоритм строится из трёх базовых конструкций: следование (команды идут одна за другой), ветвление (выбор действия по условию) и цикл (повторение действий). Массив — это набор однотипных переменных с общим именем, к каждой из которых обращаются по номеру (индексу). Умение читать и «прокручивать» в уме такие программы — ключ к заданиям 5, 6, 15 и 16 ОГЭ.
Определения и правила
| Конструкция | Синтаксис (псевдокод) | Смысл |
|---|---|---|
| Ветвление полное | если A то B иначе C | Если условие A истинно — выполняется B, иначе C |
| Ветвление неполное | если A то B | Если A истинно — выполняется B, иначе ничего |
| Цикл "пока" | нц пока A ... кц | Тело выполняется, пока условие A истинно (проверка до тела) |
| Цикл "для" (счётный) | нц для i от 1 до N ... кц | Тело повторяется N раз, i растёт на 1 |
| Массив | A[1], A[2], ..., A[N] | Индекс — номер элемента, значение — сам элемент |
Правило трассировки: заводим таблицу переменных, на каждом шаге цикла обновляем значения, отдельно следим за условием выхода.
Виды задач с массивами:
- поиск суммы/произведения элементов;
- поиск максимума/минимума и его индекса;
- подсчёт элементов по условию (чётные, положительные и т.д.);
- сортировка (обычно перестановка соседних элементов).
Формула количества повторений цикла "для":
Как применять
Пример 1. Ветвление.
введи x
если x > 10 то
y := x - 5
иначе
y := x + 5
все
выведи y
При : условие истинно, значит . При : условие ложно, .
Пример 2. Цикл с накоплением суммы.
s := 0
нц для i от 1 до 4
s := s + i*i
кц
выведи s
Шаги: ; ; ; . Ответ: .
Пример 3. Максимум в массиве.
масс A[1..5] = (3, 7, 2, 9, 5)
max := A[1]
нц для i от 2 до 5
если A[i] > max то
max := A[i]
все
кц
выведи max
Проверяем по очереди: → max=7; ? нет; → max=9; ? нет. Итог: max = 9.
Типичные ошибки
- Путают порядок проверки условия в цикле «пока»: считают, что тело выполнится хотя бы раз, хотя если условие сразу ложно — цикл не выполнится совсем.
- Забывают, что индексация массива в разных языках может начинаться с 1 или с 0 — важно смотреть на условие задачи.
- При трассировке теряют текущее значение переменной, не обновляют его на каждом шаге — рекомендуется вести таблицу «шаг — переменные».
- Путают строгое и нестрогое неравенство в условии ( и ), из-за чего меняется число повторений или результат сравнения.
- В задачах на массив с сортировкой не следят, что после перестановки элементов индексы "смещаются" — нужно фиксировать промежуточное состояние массива после каждого шага.
Где встречается на экзамене
- Задание 5 — определение результата выполнения программы с ветвлением или простым циклом (обычно на естественном языке или блок-схеме).
- Задание 6 — работа с массивом: чтение значений, вычисление суммы, поиска элемента.
- Задание 15 — анализ и трассировка алгоритма с циклами и условиями, часто на одном из учебных языков программирования (Паскаль, Python, Кумир).
- Задание 16 — составление или дополнение программы с массивом (обработка элементов по условию, поиск, сортировка, подсчёт).
Частые вопросы
В чём разница между циклом «пока» и циклом «для»?
В цикле «пока» число повторений неизвестно заранее и зависит от условия, которое проверяется перед каждым шагом. В цикле «для» число повторений задано явно — начальным и конечным значением счётчика.
Может ли цикл «пока» не выполниться ни разу?
Да, если условие цикла сразу ложно, тело цикла не выполнится, программа перейдёт к следующей команде после цикла.
С какого числа обычно нумеруются элементы массива в задачах ОГЭ?
Чаще всего с 1, но нужно всегда проверять условие задачи — иногда индексация начинается с 0, особенно в задачах на Python.
Как быстро найти сумму элементов массива при трассировке?
Заведите переменную-накопитель (например, s := 0) и на каждом шаге цикла добавляйте к ней текущий элемент массива, фиксируя промежуточные значения в таблице.
Что делать, если в условии ветвления сложное логическое выражение?
Разбейте его на простые части, вычислите каждую отдельно (истина/ложь), затем примените логические операции И, ИЛИ, НЕ по правилам таблиц истинности.
Как отличить полное ветвление от неполного в блок-схеме?
В полном ветвлении после условия есть две ветви (да и нет), которые потом соединяются. В неполном — только одна ветвь выполняет действие, вторая сразу идёт к соединению без действий.
Потренироваться: задание 16 · задание 6 · задание 5 · задание 15