Императивное программирование – это парадигма программирования, в основе которой лежит последовательное описание действий, изменяющих состояние вычислительной системы. В отличие от декларативных подходов (например, функционального или логического программирования), где описывается что требуется получить, императивный подход концентрируется на описании как достичь результата.
Для подготовки к ЕГЭ по информатике знание принципов императивного программирования критически важно, поскольку большинство экзаменационных задач (работа с циклами, условиями, массивами, функциями, строками) формулируются именно в терминах пошаговых инструкций и управления состоянием программы.
Определение
Императивное программирование – это стиль разработки программ, при котором алгоритм задаётся в виде последовательности инструкций, изменяющих значения переменных и управляющих потоков выполнения.
Формально можно сказать, что программа в императивной парадигме представляет собой конечный список команд:
S = {s1, s2, …, sn}
где каждая команда si изменяет текущее состояние памяти M(t) в новое состояние M(t+1).
Присваивание
x := выражение
Связывает идентификатор с новым значением.
Условный оператор
if условие then команда1 else команда2
Позволяет ветвить алгоритм.
Циклы
цикл с предусловием:
while условие do команда
цикл с постусловием:
repeat команда until условие
цикл со счётчиком:
for i := 1 to n do команда
Функции и процедуры
Обеспечивают модульность, повторное использование кода и передачу аргументов.
Состояние: описывается набором значений переменных в конкретный момент.
Порядок выполнения: последовательность команд имеет значение.
Пошаговая изменяемость: каждая инструкция меняет состояние программы.
Детерминированность: при одинаковых входных данных программа всегда даёт один и тот же результат (если нет случайности или внешних воздействий).

В ЕГЭ задания, основанные на императивной логике, включают:
Знание структуры императивных алгоритмов позволяет ученику быстро распознавать тип задачи и строить решение по стандартным шаблонам.
Упражнение 1. Присваивание и состояние
Дана программа:
x := 5
y := 2 * x + 1
x := x + y
а) Определите конечные значения x и y.
б) Запишите последовательность состояний памяти M(t) на каждом шаге.
в) Объясните, почему порядок выполнения инструкций имеет значение.
Упражнение 2. Цикл со счётчиком
Напишите фрагмент программы, который вычисляет сумму чисел от 1 до n.
sum := 0
for i := 1 to n do
sum := sum + i
а) Укажите инвариант цикла.
б) Найдите sum при n = 10.
в) Докажите, что результат совпадает с формулой: sum = n * (n + 1) / 2
Упражнение 3. Условный оператор
Дан фрагмент:
if x mod 2 = 0 then
y := x div 2
else
y := 3 * x + 1
а) Опишите алгоритм словами.
б) Найдите y, если x = 7.
в) Объясните, какие задачи из ЕГЭ могут использовать подобный фрагмент.
Упражнение 4. Цикл с предусловием
Напишите программу, которая определяет, является ли число простым.
isPrime := true
i := 2
while i <= sqrt(n) and isPrime do
if n mod i = 0 then
isPrime := false
else
i := i + 1
а) Объясните работу программы.
б) Проверьте n = 29.
в) Сформулируйте, как изменится программа для поиска первого делителя.
Упражнение 5. Функции и модули
Создайте функцию вычисления факториала:
function fact(n):
if n = 0 then return 1
else return n * fact(n - 1)
а) Найдите fact(5).
б) Определите глубину рекурсии при n = 7.
в) Объясните, какие преимущества даёт модульность в императивном программировании.
Императивное программирование – это основа большинства современных языков (C, Pascal, Python в императивной части). Оно позволяет формализовать алгоритмы через последовательные шаги, изменяющие состояние памяти. Для успешной подготовки к ЕГЭ необходимо уверенно владеть всеми элементами императивной парадигмы: присваиванием, циклами, условиями, процедурами и функциями. Практика через упражнения помогает сформировать алгоритмическое мышление и гарантирует высокий уровень выполнения заданий.