За одну неделю в группе прошли от «что такое язык программирования» до первой программы. В тетради шесть страниц терминов: алфавит, синтаксис, компиляция, разделы Program, Uses, Var. Каждое слово по отдельности понятно, а вместе они не складываются в картинку. Сложим.
Чему научишься. После урока сможешь: объяснить своими словами, что такое язык программирования и чем компилятор отличается от интерпретатора; перечислить шесть этапов решения задачи на компьютере и семь шагов разработки программы; назвать разделы программы на Паскале в правильном порядке; отличить верный идентификатор от неверного; записать константу и комментарий; запустить пустую программу в среде Паскаля.
Вспомни. Блок-схема это алгоритм, нарисованный фигурами (глава 2). Программа записывает тот же алгоритм словами языка, который понимает компьютер. Всё, что ты рисовал ромбами и прямоугольниками, сейчас превратится в текст.
Язык программирования и жизненный цикл программы
Компьютер понимает только команды из нулей и единиц. Писать так человеку невозможно, поэтому придумали языки-посредники. Язык программирования устроен как любой язык: у него есть алфавит (какие символы разрешены), синтаксис (как из символов складывать правильные фразы) и семантика (что каждая фраза означает). Русский: буквы → правила грамматики → смысл. Паскаль: латинские буквы и знаки → правила записи операторов → что компьютер сделает.
ЯЗЫК = АЛФАВИТ + СИНТАКСИС + СЕМАНТИКА
алфавит какие символы можно писать a..z 0..9 := ;
синтаксис как их складывать Var a: Integer;
семантика что это значит «завести ящик a для целых»
ДВА СПОСОБА ПРЕВРАТИТЬ ТЕКСТ В КОМАНДЫ ПРОЦЕССОРА
компиляция текст ──▶ [компилятор] ──▶ готовый файл .exe ──▶ запуск
переводит ВСЮ программу заранее, как книгу целиком
интерпретация текст ──▶ [интерпретатор] ──▶ выполняет строку за строкой
переводит на ходу, как синхронный переводчик
Паскаль — компилируемый язык. Ошибку в синтаксисе компилятор
покажет ДО запуска, программа даже не начнёт работать.
Жизненный цикл программы из тетради означает путь от идеи до работающего файла и дальше: программу пишут, переводят компилятором, запускают, находят ошибки, исправляют, снова переводят. Этот круг «написал → скомпилировал → запустил → починил» ты будешь проходить на каждом занятии.
Шесть этапов решения задачи на компьютере
Прежде чем писать код, задачу проводят через шесть этапов. На экзамене их спрашивают списком, поэтому выучи порядок. Смысл каждого покажу на задаче из тетради: площадь треугольника по трём сторонам.
ШЕСТЬ ЭТАПОВ РЕШЕНИЯ ЗАДАЧИ (на примере площади треугольника)
1. Постановка задачи что дано (a, b, c), что найти (S)
2. Моделирование формула Герона: p = (a+b+c)/2,
S = √(p·(p−a)·(p−b)·(p−c))
3. Построение алгоритма блок-схема: ввод → p → S → вывод (глава 2)
4. Программирование текст на Паскале: Program Triangle …
5. Отладка и тестирование запуск на 3-4-5: должно быть 6
6. Анализ результатов ответ разумный? а если ввести 1, 1, 10?
Обрати внимание: программирование лишь четвёртый этап из шести. Половина работы делается до того, как открыта среда. Именно поэтому в главе 2 мы столько рисовали блок-схемы.
Структура программы: разделы по порядку
Программа на Паскале похожа на анкету с разделами в строгом порядке. Сначала заголовок, потом описания (что подключаем, какие константы и переменные заведём), и только в конце сам алгоритм между Begin и end. В тетради перечислены все разделы; в маленьких программах большинство из них пустые и не пишутся.
Program Imya; { заголовок: имя программы }
Uses ...; { подключаемые библиотеки — обычно не нужен }
Label ...; { метки — в этом курсе не используем }
Const pi = 3.14; { константы: значение задано раз и навсегда }
Type ...; { свои типы данных — позже }
Var a, b: Integer; { переменные: ящики с именем и типом }
Procedure ...; { подпрограммы — глава 7 }
Function ...;
Begin { начало алгоритма }
{ операторы через точку с запятой }
end. { конец программы — с ТОЧКОЙ }
ПОРЯДОК РАЗДЕЛОВ (запомнить как список для экзамена) Program → Uses → Label → Const → Type → Var → Procedure/Function → Begin … end. заголовок ─────────── раздел описаний ─────────────────────── раздел операторов Минимальная рабочая программа — всего три строки: Program Pustaya; Begin end.
Три вещи, на которых ловят: после каждого раздела и оператора стоит точка с запятой; после последнего end стоит точка, а не точка с запятой; Begin и end служат скобками алгоритма, между ними лежит то, что раньше было прямоугольниками и ромбами блок-схемы.
Алфавит, знаки, идентификаторы, комментарии
Алфавит Паскаля: латинские буквы, цифры и знаки. Строчные и прописные буквы не различаются: Var, var и VAR для компилятора одно и то же. Кириллица разрешена только внутри кавычек (то, что печатается на экран) и внутри комментариев.
Идентификатор: имя, которое ты даёшь программе, переменной или константе. Как кличка для ящика: короткая, без пробелов, чтобы компилятор нашёл. Правила: только латинские буквы, цифры и знак подчёркивания; первый символ: буква или подчёркивание, не цифра; регистр не важен; нельзя брать служебные слова языка (Begin, Var, Program).
ИДЕНТИФИКАТОРЫ: ВЕРНО / НЕВЕРНО
summa ✓ 2x ✗ начинается с цифры
S1 ✓ my var ✗ пробел внутри
_tmp ✓ цена ✗ кириллица
Sout ✓ begin ✗ служебное слово
Sint = SINT = sint — одно и то же имя (регистр не важен)
ЗНАКИ: + − * / := = <> < > <= >= ; , . : ( ) ' ' { }
Комментарий это заметка для человека, компилятор её пропускает. Пишется в фигурных скобках: { ввод данных }. В тетради так подписаны части программы Triangle. Комментарии не влияют на работу программы, но на экзамене их наличие показывает, что ты понимаешь свой код.
Константы: значение раз и навсегда
Константа похожа на ящик с крышкой, которую запечатали: значение положили один раз в разделе Const и менять нельзя. Число π, курс валюты на сегодня, строка-заголовок. В тетради четыре примера, по одному на тип: число целое, число с дробной частью, строка в апострофах и логическое значение.
Const
i2 = 45; { целое число }
pi = 3.14; { вещественное — дробная часть через ТОЧКУ }
qq = 'Вася'; { строка — в апострофах, кириллица тут разрешена }
b = True; { логическое значение }
Заметь: в Const пишут одно «равно», а не :=. Двоеточие с равно означает действие «положить» из блок-схем, оно живёт между Begin и end. В разделе описаний мы ничего не делаем, только объявляем.
Семь шагов разработки программы (из тетради)
- Понять задачу: что дано и что нужно получить.
- Решить, какие данные будут константами, а какие переменными.
- Определить тип каждой величины (целая, вещественная, строка).
- Записать, какие вычисления нужны для результата.
- Продумать, как задать исходные данные (ввод) и как показать результат (вывод).
- Получить результат и сверить его с расчётом вручную.
- Проверить программу на нескольких наборах данных, включая необычные.
Как запустить. Среда в колледже пока не названа, поэтому весь код курса написан так, чтобы работать и в PascalABC.NET (Windows, бесплатно, самый простой старт), и во Free Pascal / Lazarus (Windows, Linux, macOS): без библиотеки crt и без функций, которые есть только в одной среде. Порядок в любой среде один: создать файл → вставить программу → нажать «Запустить» (в PascalABC.NET клавиша F9, в Lazarus тоже F9). Для первого запуска возьми трёхстрочную пустую программу из этого урока: если она скомпилировалась без ошибок, среда настроена. Когда преподаватель назовёт среду, здесь появится урок установки со скриншотами.
Контрольный вопрос. Из каких трёх частей состоит любой язык программирования (по конспекту)?
Подсказка: Как у русского языка: буквы, правила грамматики, смысл.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Как называется программа-переводчик, которая переводит весь текст программы в машинные команды заранее, до запуска? Впиши одно слово.
Подсказка: Второй способ, интерпретатор, переводит на ходу, строку за строкой. Нужен первый.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Какой этап решения задачи на компьютере идёт сразу после построения алгоритма?
Подсказка: Сначала схема, потом её текст на языке.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Каким знаком заканчивается программа на Паскале после последнего слова end? Впиши название знака одним словом.
Подсказка: Не тот знак, что после каждого оператора.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Какой из идентификаторов записан верно?
Подсказка: Проверь по трём правилам: с чего начинается, есть ли пробел, латиница ли.
Онлайн-проверка ответа появится позже
Контрольный вопрос. В каком разделе программы описывают величины, значение которых задаётся один раз и не меняется? Впиши служебное слово этого раздела латиницей.
Подсказка: В тетради в этом разделе стоят pi = 3.14 и qq = ‘Вася’.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Разделы программы перечислены в разном порядке. Какая последовательность верна?
Подсказка: Заголовок первым, описания до алгоритма, константы раньше переменных.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Компилятор отказался переводить эту программу: в одной строке вместо знака «равно» стоит знак присваивания, а в разделе описаний так нельзя. В каком разделе ошибка?
Исходный код для этого задания:
Program Krug; Const pi := 3.14; Var r, L: Real; Begin Readln(r); L := 2 * pi * r; Writeln(L); end.Подсказка: Где в программе мы ничего не делаем, а только объявляем? Там присваивания быть не может.
Онлайн-проверка ответа появится позже
Контрольный вопрос. Отметь всё, что компилятор пропустит и не будет выполнять как команду.
Выберите все верные варианты.
Подсказка: Что в программе написано только для человека?
Онлайн-проверка ответа появится позже
Задание. Пройди первые три этапа на бумаге для этой задачи: (1) выпиши, что дано и что найти; (2) запиши формулы полупериметра и площади; (3) нарисуй линейную блок-схему. Затем в среде Паскаля создай и запусти пустую программу с именем Triangle (три строки: заголовок, Begin, end.) и впиши, сколько строк в ней получилось.
Принято, если: (1) число совпало; (2) на бумаге есть «дано/найти», две формулы и схема с вводом a, b, c и выводом S; (3) пустая программа скомпилировалась без ошибок (скриншот или фото экрана).Задача: по трём сторонам треугольника найти его площадь (формула Герона).
Этапы: 1 постановка, 2 моделирование, 3 алгоритм, 4 программирование, 5 отладка, 6 анализ.
Подсказка: Минимальная программа из урока: заголовок с именем, открывающая и закрывающая скобки алгоритма. Точка после end обязательна.
✅ Готово, если: ответ раскрывает то, что просит критерий приёмки в задании выше.
Онлайн-проверка ответа появится позже
Итог. Язык программирования = алфавит + синтаксис + семантика; Паскаль компилируется целиком до запуска. Задачу решают в шесть этапов, программирование из них четвёртый. Программа состоит из разделов в строгом порядке: Program → Uses → Label → Const → Type → Var → Procedure/Function → Begin … end. (с точкой). Идентификатор: латиница, цифры, подчёркивание, не с цифры; регистр не важен. Комментарий пишут в фигурных скобках; константа объявляется через = в разделе Const.
Что дальше
Разделы Const и Var объявляют ящики, но у каждого ящика есть тип: что в него можно класть и какого размера. Целые с диапазонами, вещественные, символы, строки, логические: следующий урок.
