Задания № 6, 16 · ЕГЭ

Структура языка программирования

Алфавит, лексемы, синтаксис и смысл программных конструкций
6 мин чтенияСложность: Обновлено 29 сентября 2026

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

Уровни описания языка

Язык программирования можно рассматривать как систему, в которой каждый следующий уровень использует предыдущий. Сначала выбираются допустимые символы, затем из них составляются минимальные значимые элементы, после этого элементы объединяются по правилам языка, а в конце определяется результат выполнения получившейся программы.

  1. Алфавит — множество символов, которые разрешено использовать.
  2. Лексемы — минимальные последовательности символов, имеющие самостоятельное значение.
  3. Синтаксис — правила построения правильных конструкций языка.
  4. Семантика — смысл конструкций, то есть действие, которое они выполняют.
D
Алфавит языка

Алфавит языка программирования — набор допустимых символов: букв, цифр, знаков операций, разделителей и специальных символов. Например, в Python используются латинские буквы, цифры, знаки \(+\), \(-\), \(=\), скобки, кавычки, пробелы и символы перевода строки.

Алфавит не равен набору всех символов, которые можно увидеть на клавиатуре. Например, случайный символ § может не входить в алфавит конкретного языка и вызвать ошибку ещё до анализа смысла программы.

D
Лексема

Лексема — минимальная последовательность символов, которую компилятор или интерпретатор распознаёт как единое целое. К лексемам относятся ключевые слова, имена, числа, строковые литералы, знаки операций и разделители.

Лексемы и токены

В процессе токенизации исходный текст разбивается на лексемы, или токены. Например, строка result = a + 5 состоит из имени result, оператора присваивания =, имени a, оператора сложения + и целочисленного литерала 5.

ФрагментВид лексемыПример
if, while, returnключевое словокоманда языка
count, x, resultидентификаторимя переменной или функции
17, 3.14числовой литералконстантное значение
"OK"строковый литералтекстовое значение
+ , -, == , <оператордействие или сравнение
( ) , : , ;разделительграница частей конструкции

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

!
Частая ошибка

Не смешивайте символ и лексему. Символ + — один знак алфавита, а лексема + — оператор сложения. Число 125 состоит из трёх символов, но является одной лексемой — числовым литералом.

Синтаксис: как строится программа

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

D
Синтаксис

Синтаксис — совокупность правил записи конструкций языка. Он отвечает на вопрос: можно ли так записать программу? Например, в Python после условия if требуется двоеточие, а команды тела должны иметь отступ.

Python
1x = 7
2if x > 0:
3    print("positive")

В этом фрагменте присваивание, условие и вызов функции записаны синтаксически правильно. Оператор присваивания связывает имя x со значением 7, условие содержит сравнение, а тело условной конструкции образует блок.

T
Правило различения ошибок

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

Микро-проверка

Какая часть строки a = b + 2 является числовым литералом?

Семантика: что означает программа

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

D
Семантика

Семантика — смысл программной конструкции, то есть изменение данных, вычисление значения, вывод на экран, переход к другой команде или другое действие при выполнении.

Например, x = 2 + 3 синтаксически корректно и имеет смысл: сначала вычисляется выражение \(2+3\), затем полученное значение 5 записывается в x. Запись x = 2 + нарушает синтаксис: после знака сложения отсутствует второй операнд. Запись 10 / 0 может быть синтаксически правильной, но при выполнении вызывает ошибку деления на ноль.

i
Три вопроса к фрагменту

При анализе программы последовательно спросите: 1) входят ли используемые знаки в алфавит; 2) образуют ли они правильные лексемы и конструкцию; 3) что эта конструкция делает при выполнении?

Структура программы

Структура программы зависит от языка, но обычно включает объявления данных, последовательность команд, условия, циклы и подпрограммы. Внутри команды могут находиться выражения, а выражение состоит из операндов и операций.

  • Заголовок или служебная часть — подключение модулей, объявление программы или функции.
  • Объявления — создание переменных, констант, типов и параметров.
  • Исполняемая часть — команды, которые выполняются в определённом порядке.
  • Блоки — группы команд, объединённые условием, циклом или подпрограммой.

В экзаменационных задачах важно понимать границы команды и порядок вычислений. Например, условие выбирает одну из ветвей, составной оператор объединяет несколько команд, а функция может вычислить и вернуть результат. Передача данных в функцию может выполняться по значению или по ссылке — это отдельные механизмы, описанные на соседних страницах.

Разобранный пример: синтаксис и смысл

№
Задание

Определите значение переменной s после выполнения программы и укажите, почему строка if n > 2 без двоеточия является ошибочной.

Python
1n = 4
2s = 1
3if n > 2:
4    s = s * n
5print(s)
1
Строки n = 4 и s = 1 синтаксически корректны: создаются две переменные.
\(\displaystyle n=4,\quad s=1\)
2
В условии сравниваются значения n и 2.
\(\displaystyle 4>2\;\Rightarrow\;\text{истина}\)
3
Так как условие истинно, выполняется команда внутри блока.
\(\displaystyle s\leftarrow s\cdot n=1\cdot4=4\)
4
Команда вывода печатает текущее значение переменной s.
\(\displaystyle \boxed{s=4}\)

Двоеточие после условия и отступ перед s = s * n имеют синтаксическое значение. Если убрать двоеточие, нарушится грамматика условной конструкции. Если оставить двоеточие, но убрать отступ, Python не сможет определить тело блока.

\[\text{синтаксически правильная запись}+\text{правильная семантика}=\text{корректная программа}\]
!
Не путайте виды ошибок

Команда if n > 2: с неправильным отступом содержит синтаксическую ошибку. Команда s = s / 0 может быть синтаксически правильной, но вызовет ошибку во время выполнения. Программа, которая выполняется, но считает не то, что требуется, содержит логическую ошибку.

Как анализировать запись на экзамене

  1. Проверьте допустимость символов и правильность кавычек, скобок и разделителей.
  2. Разделите строку на лексемы: ключевые слова, имена, числа и операции.
  3. Проверьте грамматику: порядок элементов, двоеточия, скобки и отступы.
  4. Определите тип каждой конструкции: присваивание, условие, цикл, вызов или возврат значения.
  5. Проследите семантику: какие значения вычисляются и как изменяются переменные.
Приём для заданий

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

Quick-test

Q
Быстрый тест по теме

Проверьте себя

~ 2 мин4 вопроса
Вопрос 1 / 4
Вопрос 1 из 4 · определения
Что описывает синтаксис?
Главное за минуту

Главное

  • Алфавит — допустимые символы языка; лексемы — минимальные значимые элементы.
  • Синтаксис определяет, как правильно записывать конструкции.
  • Семантика объясняет, что происходит при выполнении правильной записи.
  • Для анализа программы нужно пройти путь от символов и лексем к структуре, а затем к вычислению результата.
  • Синтаксическая ошибка нарушает форму записи, ошибка выполнения или логическая ошибка связана со смыслом и результатом.