Урок 1. Первая программа на Pascal
В этом уроке на экране появится результат вашей первой программы. Понадобится среда, в которой пишут и запускают программы на Pascal, и минут двадцать.
Какую среду выбрать
Программу на Pascal пишут как обычный текст, а потом компилятор переводит её в команды, понятные компьютеру. Редактор, компилятор и запуск готовой программы обычно собраны в одну программу — среду разработки.
- PascalABC.NET — для Windows, бесплатная, с русским интерфейсом. Её ставят в большинстве школ. Если вы учитесь в школе — берите её.
- Free Pascal — для Windows, Linux и macOS, тоже бесплатный. Подходит, если у вас Linux или нужна среда, похожая на Turbo Pascal из старых учебников.
Как установить: PascalABC.NET, Free Pascal. Все программы курса работают в обеих средах.
Первая программа
Наберите в редакторе:
program Hello;
begin
writeln('Привет, мир!');
end.Привет, мир!Что в ней по строкам:
program Hello;— заголовок: словоprogramи имя программы. Имя пишут латиницей, без пробелов, оно может содержать цифры и знак_, но не может начинаться с цифры. Заголовок можно и не писать, но так принято.begin— начало действий программы.writeln('Привет, мир!');— команда вывести текст на экран и перейти на новую строку. Текст пишут в одинарных кавычках.end.— конец программы. Точка после последнегоendобязательна: по ней компилятор понимает, что программа закончилась.
Строки между begin и end называют операторами — это действия программы. Операторы разделяются точкой с запятой. Отступ в два пробела компилятору не нужен, он нужен человеку: так видно, что внутри чего находится.
Pascal не различает большие и маленькие буквы: WriteLn, writeln и WRITELN — одно и то же.
Как запустить
Способ зависит от среды, которую вы поставили.
PascalABC.NETклавиша F9
- Создайте новый файл (
Ctrl+N) и наберите программу. - Нажмите
F9— «Выполнить». Внизу, в окне вывода, появится строка «Привет, мир!». - Сохраните программу (
Ctrl+S): файлы программ на Pascal имеют расширение.pas.
Free Pascal в командной строкекоманда fpc
Сохраните текст в файл hello.pas, в терминале (в Windows — в командной строке) перейдите в его папку командой cd и выполните:
fpc hello.pas
./helloПервая команда компилирует программу и создаёт рядом файл hello (в Windows — hello.exe), вторая его запускает. В Windows вместо ./hello наберите hello.exe.
Free Pascal в среде fpклавиши Ctrl+F9
Среда fp входит в Free Pascal. Ctrl+F9 компилирует и запускает программу, Alt+F5 показывает экран с её выводом, любая клавиша возвращает к тексту.
write и writeln
writeln после вывода переходит на новую строку, write — остаётся на той же. Через запятую можно вывести несколько значений подряд, в том числе результат вычисления:
program WriteDemo;
begin
write('Pascal ');
write('ABC');
writeln;
writeln('Вторая строка');
writeln('2 + 3 = ', 2 + 3);
end.Pascal ABC
Вторая строка
2 + 3 = 5Пустой writeln без скобок просто переводит строку. Значения через запятую выводятся вплотную, без пробелов между ними: пробел нужно поставить внутри кавычек самому, как в '2 + 3 = '.
Апостроф внутри текста пишут дважды: writeln('It''s Pascal') выведет It's Pascal.
Комментарии
Комментарий — пояснение для человека, компилятор его пропускает. В Pascal три вида комментариев:
program Comments;
{ Комментарий в фигурных скобках }
begin
writeln('Строка 1'); // комментарий до конца строки
(* writeln('Строка 2'); эта команда не выполнится *)
writeln('Строка 3');
end.Строка 1
Строка 3Комментарием удобно временно «выключить» строку, не стирая её. Комментарий // понимают PascalABC.NET и Free Pascal, но не старый Turbo Pascal.
Частые ошибки
- Нет точки в конце. Программа заканчивается на
end;вместоend.— компилятор сообщит, что ждал точку. - Нет точки с запятой между операторами. Ошибку покажут на строке ниже той, где пропущен знак. Подробно — в справке Ошибка: ожидалась точка с запятой.
- Двойные кавычки.
writeln("Привет")— ошибка: в Pascal текст пишут только в одинарных кавычках. - Русские буквы в имени программы.
program Привет;Free Pascal не примет. Имена пишите латиницей — так программа соберётся в любой среде. - Окно сразу закрывается. Если запускать готовый
.exeдвойным щелчком, окно исчезает, как только программа закончит работу. Как это исправить — в справке Окно программы сразу закрывается.
Если в Free Pascal под Windows вместо русских букв видны непонятные значки, дело в кодировке консоли, а не в программе. На время учёбы можно выводить текст латиницей. В окне вывода PascalABC.NET русский текст показывается правильно.
Коротко
- Программа:
program Имя;, затемbegin, операторы через;иend.с точкой. writelnвыводит и переводит строку,write— выводит без перевода строки.- Текст — в одинарных кавычках, апостроф внутри текста пишут дважды.
- Запуск:
F9в PascalABC.NET,Ctrl+F9в средеfp,fpc файл.pasв командной строке. - Комментарии:
{ … },(* … *)и//до конца строки.