Структура программы на языке Паскаль
В заголовке указывается имя программы и список параметров. Общий вид:
program n (input, output, x, y,…);
здесь n – имя программы; input – файл ввода; output – файл вывода; x, y – внешние файлы, используемые в программе.
Заголовка может и не быть или он может быть без параметров.
Блок
Блок программы состоит из шести разделов, следующих в строго определенном порядке:
- раздел меток (label)
- раздел констант (const)
- раздел типов (type)
- раздел переменных (var)
- раздел процедур и функций
- раздел действий (операторов).
Раздел действий должен присутствовать всегда, остальные разделы могут отсутствовать.
Каждый из первых четырех разделов начинается с соответствующего ключевого слова (label, const, type, var), которое записывается один раз в начале раздела и отделяется от последующей информации только пробелом, либо концом строки, либо комментарием.
Раздел меток (label)
Любой выполняемый оператор может быть снабжен меткой – целой положительной константой, содержащей не более 4-х цифр. Все метки, встречающиеся в программе, должны быть описаны в разделе label.
label l1, l2, l3…;
здесь l1, l2, l3 – метки.
Пример. label 5, 10, 100;
Метка отделяется от оператора двоеточием.
Пример. Пусть выражение a := b имеет метку 20. Тогда этот оператор выглядит так:
20: a := b;
Раздел констант (const)
Если в программе используются константы, имеющие достаточно громоздкую запись (например, число пи с 8-ю знаками), либо сменные константы (для задания варианта программы), то такие константы обычно обозначаются какими-либо именами и описываются в разделе const, а в программе используются только имена констант. Это делает программу более наглядной и удобной при отладке и внесении изменений.
const a1 = c1; a2 = c2; …
здесь a1 – имя константы, c1 – значение константы.
Пример. const pi = 3.14; c = 2.7531;
Раздел типов (type)
Если в программе вводится тип, отличный от стандартного, то этот тип описывается в разделе type:
type t1 = вид_типа; t2 = вид_типа;
где t1 и t2 – идентификаторы вводимых типов.
Затем тип используется при объявлении переменных.
Пример использования нестандартных типов:
const len=40; type year=1930..2010; names=string[len]; var empl: names; y: year;
Раздел описания типов имеет большое значение в программе на языке Pascal. Если в программе не использовать типы, то можно столкнуться с несовместимостью типов переменных, даже если они описаны одинаково.
Раздел переменных (var)
Пусть в программе встречаются переменные v11, v12,…; все они должны быть описаны следующим образом:
var v11, v12,…: type1; v21, v22,…: type2; …
здесь v11, v12,… — имена переменных; type1 – тип переменных v11, v12,…; type2 – тип переменных v21, v22,….
Пример. var k, i, j: integer; a, b: real;
Каждая переменная должна быть описана до ее использования в программе и отнесена к одному и только одному типу. Названия разделов (const, type, var…) указываются только один раз.
var a: real; b: real;
Таким образом, в разделе var вводится имя каждой переменной и указывается, к какому типу эта переменная принадлежит. Тип переменной можно задать двумя способами: указать имя типа (например, real, color и т.д.), либо описать сам тип, например: array[1..16] of char
Раздел процедур и функций
Здесь присутствуют заголовки и тела пользовательских процедур и функций.
Раздел действий (операторов)
Эта часть программы начинается с ключевого слова begin и заканчивается словом end, после которого должна стоять точка. Раздел действий есть выполняемая часть программы, состоящая из операторов.
Урок 3. Первая программа в Pascal
Обычно, изучение любого языка программирования начинается с программы Hello, world! Но мы с вами займемся этим чуть попозже, потому что сейчас я хочу рассказать вам о величинах и типах данных в Pascal.
Виды величин
Обычно, изучение любого языка программирования начинается с программы Hello, world! Но мы с вами займемся этим чуть попозже, потому что сейчас я хочу рассказать вам о величинах и типах данных в Pascal. Что такое величина? Величина — это отдельный информационный объект, хранящийся в памяти компьютера. Существуют две классификации величин. Мы рассмотрим каждую в отдельности.

В свою очередь числовой делится на два типа.


Символьные тоже делятся на два типа.

Вторая классификация величин.Константа — значение неизменно. Переменная — значение может меняться в течение работы программы. Переменные обозначаются символическими именами, которые называются идентификаторами. Как присвоить значение какой либо переменной? С помощью команды присваивания! Команда присваивания в Паскаль: < переменная >:=
Первая программа на Pascal
Структура программы в Паскаль
Заголовок
Объявление переменных и констант
Раздел операторов
Ввод и вывод в Паскаль
У вас, наверняка, возникает вопрос: «Как вводить значения переменных с клавиатуры?», а также: «Как вывести на экран полученный результат?». Для этого используются четыре специальных оператора:
Для ввода:
- read(Переменную)
- readln(Переменную)
И для вывода:
- write(Текст в »)
- writeln(Текст в »)
«В чем разница между read и readln, write и writeln?»: снова озадачитесь вы. Ответ прост. Если добавляете «ln» (что расшифровывается, как Line), то курсор переносится на следующую строку.
Hello, World на Pascal
Теперь вы готовы написать первую программу.
Program Hello_World; Begin Write('Hello, World!'); End.
Ну, тут все понятно. Чтобы разнообразить решение предлагаю решить несколько задачек этого типа.
Задача 1. Требуется запросить имя пользователя, а затем вывести «Привет, !» Для решения этой задачи нам потребуется строковой тип данных — string.
Program Hello_boy_girl; var name: string; Begin Write('Введите свое имя: '); Read(name); Write('Привет,', name,'!'); End.
Задача 2. Требуется узнать сколько лет пользователю, а затем вывести «Вам лет». Очевидно, что для решения этой задачи нам потребуется целочисленный тип данных — Integer.
Program How_old_are_you; var years: integer; Begin Writeln('Сколько вам лет?'); Read(years); Write('Вам ', years,' лет.'); End.
Ну, вот и все! Все, что я хотел рассказать вам в сегодняшнем уроке. Вы узнали, что такое величина в Pascal, и выучили основные типы. А также научились создавать простейшие линейные программы. Более подробно про типы в PascalABC.Net мы поговорим в следующих уроках. Кстати, про PascalABC.Net. Понятно, что писать программы на листочках бесполезно, и вы должны тренироваться на компьютере. По этой ссылке скачайте последнюю версию PascalABC.Net для Windows.
Вот, как выглядит интерфейс программы при запуске.

P.S. Давайте выделим две особенности Pascal:
- Паскаль НЕ чувствителен к регистру, то есть и program, и Program, и PrOgRaM для него ничем не отличаются. А потому с самого начала привыкайте писать в нижнем регистре, чтобы при переходе на другой язык программирования не испытывать никаких проблем с этим;
- Имя программы в Pascal не играет никакого значения, оно не несет в себе никаких полезных функций. Если хотите вы можете просто не писать ЕГО!
P.P.S. В мире наиболее популярны три операционные системы: Linux, Mac OS и Windows. А если у вас не Windows? Какой компилятор выбрать тогда? Об этом мы с вами поговорим в уроке номер N.
После компилирования программа закрывается как только выполнит задачу. Нужно чтобы она дождалась нажатия кнопки. Пробовал пару вариантов, но не работает. Подскажите, пожалуйста.
danilkonon :
Если вы используете Turbo Pascal, то поставьте после program uses crt; и перед end. readkey; program aaa;
uses crt;
var a: integer;
read(a);
writeln(a);
readkey;
end.
Moon Or Sun :
После надписи «begin» поставь «;»
Аноним :
После begin двоеточие не ставиться.
Anonim :
В объявлении константы есть ошибка: значение не надо присваивать, у константы оно просто равно
danilkonon :
спасибо. исправили
Кирилл :
P.P.S. В мире наиболее популярны три операционные системы: Linux, Mac OS и Windows. А если у вас не Windows? Какой компилятор выбрать тогда? Об этом мы с вами поговорим в уроке номер N. Так что же делать обладателям отличных от Windows ОС?
danilkonon :
Вообще у вас есть три более-менее простых варианта: 1) Использовать веб среду http://pascalabc.net/WDE/ (не используйте Сафари, попробуйте Хром)
2) Установить FreePascal для Mac OS. У меня, если честно, так и не получилось.
3) Установить виртуальную машину( Windows 7, Windows XP) и на нее установить PascalABC.NET или Turbo Pascal.
NinthRise :
Есть ещё Lazarus
есть wine, virtualbox, online pascalabc. чего надо еще?
DAM4GE :
Как открывать нужные скобки? Если я пишу Hello, world в скобках » » , то у меня вылезает ошибка.
Аноним :
WriteLn(‘Текст’) или Write(‘Текст’)
Внутри обычных скобок когда обозначаем текст (НЕ переменную) то ставим ‘ перед и после текста
Спасибо, я создал программу которая общается с пользователем, объединив эти две задачи.
Получилось вот так: begin
var name: string;
write(‘Напиши своё имя: ‘);
read(name);
write(‘Молодец, ‘, name, ‘!’);
var years: integer;
writeln(‘Сколько тебе лет?’);
read(years);
write(», years, ‘, значит. А мне ещё и года нету(((‘);
writeln(‘Мне пора на компьютер твоего друга… Пока’);
end.
Что делать если установил ABC Pascal, а после запуска не хочет открываться и нормально работать?
Елена Агафонова :
А мне не понравилось, что программа не чувствительна к числам, которые заканчиваются на 1,2,3,4. Получилось немного громоздко, но как сократить пока не придумала) program Your_age;
var a: integer;
begin
writeln(‘А сколько Вам лет?’);
readln(a);
if (a > 4) and (a 21) and (a mod 10 > 4) then
write(‘Значит, Вам ‘,a,’ лет!’);
if (a 1) and (a mod 10 20) and (a mod 10 > 1) and (a mod 10 < 5) then
write(‘Значит, Вам ‘,a,’ года!’);
if (a mod 10 = 1) and (a 11) then
write(‘Значит, Вам ‘,a,’ год!’)
end.
Noob145 :
Подскажите, пожалуйста, возможно ли с помощью линейного алгоритма сделать так, что работала команда ввода read(surname)?
Использую PascalABCNET.
После написания такого кода программа не делает того, с чем прошу мне подсказать: var
name,surname:string;
begin
writeln(‘Введите, пожалуйста, ваше имя: ‘);
readln(name);
writeln(‘Введите, пожалуйста, вашу фамилию: ‘);
readln(surname);
end.
alen_marzz :
А вы уверены в том, что она не делает?) У вас ведь нигде и вывода нет.
Вы правы, работает. Вчера ночью почему-то не работало. После перезагрузки компьютера заработало. Наверно, что-то не так пошло, потому что тот же самый код запускал. Хорошо, что работает. Думал, что я не понимаю чего-то.
Вспомнил. Дело не только в этом было. Суть в том, что не работал общий код, который был изначально. Именно это там не работало. Эти 2 ввода игнорировались. После вопроса, где нужно ввести 1 или 2 программа переходила на вопрос о возрасте. var
name, surname: string;
a, age: integer; BEGIN writeln (‘Connection…’);
writeln(‘Доброго времени суток, пользователь программы!’);
writeln(‘Вы находитесь в программной среде высшего интеллектуального творчества человечества.’);
writeln(‘Просьба вести себя осторожно, дышать ровно, следовать инструкциям и быть готовым нести ответственность за принятие своих решений.’);
writeln(‘Вы готовы? 1 — Yes/2 — No’);
writeln(‘Введите число:’);
read(a); case a of
1:writeln(‘Решение о вашем действии записано в информационное пространство Вселенной. Отмена действий невозможна.’);
0:write(‘Большие решения требуют серьёзной ответственности. Когда будете к этому готовы, можете в любой момент обратиться к программной среде.’);
else writeln(‘У вас только одно право на ошибку. Попробуйте ещё раз ввести 1 или 0.’);
end; writeln(‘Введите, пожалуйста, ваше имя, чтобы программа вам рассказала о его значении: ‘);
read(name);
writeln(‘Введите, пожалуйста, вашу фамилию, чтобы программа вам рассказала о её значении: ‘);
readln(surname);
writeln(‘Сколько вам лет, ‘,name,’?’);
readln(age); case age of
2..4,22..24,32..34,42..44,52..54,62..64,72..74,82..84,92..94,102..104,122..124:writeln(‘Вам ‘,age,’ года.’);
1,21,31,41,51,61,71,81,91,101,121:writeln(‘Вам ‘,age,’ год.’);
5..20,25..30,35..40,45..50,55..60,65..70,75..80,85..90,95..100,105..120,125,126:writeln(‘Вам ‘,age,’ лет.’);
else write(‘В настоящее время человечеством не доказано, что человек может столько лет жить на планете Земля.’);
end;
END.
alen_marzz :
Очень здорово, что программа запустилась. Но на будущее: когда вы просите помощи, лучше прикреплять полный код программы/подпрограммы. Иначе такая помощь выполняется почти вслепую.
Тот, что выше написал, полный код программы. В нём не работает то, что я описал в предыдущем сообщении.
readln(name) и readln(surname) не предлагают ввести данные. Сразу переходит программа на writeln(‘Сколько вам лет, ‘,name,’?’).
Тот, что выше написал, полный код программы. В нём не работает то, что я описал в предыдущем сообщении.
readln(name) и readln(surname) не предлагают ввести данные. Сразу переходит программа на writeln(‘Сколько вам лет, ‘,name,’?’). https://uploads.disquscdn.com/images/50fc00ceb7dc2e9dd91f0aa03bb9f56f324daffa4ccb6de35b673b7b01b26e14.png
Mr. Game :
writeln(‘Введите, пожалуйста, ваше имя, чтобы программа вам рассказала о его значении: ‘);
readln(name);
нужно писать не read, а readln
Pascal
Pascal — это универсальный язык программирования, отличающийся строгой структурой и типизацией переменных, а также интуитивно понятным синтаксисом. Был разработан швейцарским ученым Никлаусом Виртом в 1970 году на базе языка Алгол-68 для обучения студентов структурному программированию. Некоторые диалекты Pascal ограниченно применяются в промышленности и разработке приложений.

«IT-специалист с нуля» наш лучший курс для старта в IT
Pascal относится к числу самых распространенных языков программирования в мире и по праву считается одним из наиболее удобных для обучения. На его базе были разработаны другие диалекты, языки и среды разработки, такие как Delphi, Object Pascal, Turbo Pascal, Modula-2 и другие.
Что такое Pascal
Язык Pascal относится к семейству императивных, то есть написанная на нем программа представляет собой набор последовательных команд. При этом:
- команды выполняются строго последовательно;
- результат выполнения команды записывается в память;
- каждая последующая команда использует данные, полученные при исполнении предыдущей.
Также Pascal является языком со строгой, или сильной типизацией. Различным конструкциям, из которых состоит программа (модулям, функциям, переменным и т.д.), присвоены четко определенные свойства. Это позволяет согласовать работу отдельных частей программного кода и уменьшить вероятность ошибок, вызываемых совместным применением логически несовместимых значений. Проще говоря, программы, написанные на Pascal, более устойчивы к аварийным отказам.
Профессия / 8 месяцев
IT-специалист с нуля
Попробуйте 9 профессий за 2 месяца и выберите подходящую вам

Еще одна важная характеристика языка Pascal — его процедурность и структурированность. Это означает, что вся программа состоит из блоков, которые находятся по отношению к ней и друг к другу в строгой подчиненности. При этом отдельные последовательно выполняемые блоки можно объединять в подпрограммы.
Pascal стал одним из первых языков программирования такого типа. Это обусловлено тем, что в 60–70-е годы прошлого века сложность компьютерных вычислений достигла такого уровня, что писать программы неструктурированным языком стало неудобно и долго. Более того, программы без структуры (так называемый спагетти-код) было сложно читать, анализировать и тестировать, что вело к большому количеству ошибок. По мнению самого Вирта, разработанный им язык позволяет обучить студентов не просто программировать, а писать простой и удобный для понимания код.
Читайте также Как выбрать IT-специальность в новых реалиях?
История языка программирования Pascal
Разработчик Pascal — швейцарский ученый Никлаус Вирт. Это один из наиболее заметных специалистов-информатиков своего времени, создатель многих языков программирования. В конце 60-х годов прошлого века он участвовал в комиссии по разработке стандарта языка Алгол-68. Часть этих наработок он использовал затем при создании Pascal. Название новому языку Вирт дал в честь французского ученого, механика и изобретателя Блеза Паскаля, создавшего одно из первых механических счетных устройств (арифмометр).
Главной целью Вирта было создание удобного инструмента для обучения студентов структурному программированию. Благодаря интуитивно понятному синтаксису Pascal даже новичок-любитель способен написать на нем стройный, понятный код.
Дальнейшее развитие Pascal привело к появлению многих диалектов этого языка, созданных как самим Виртом, так и сторонними разработчиками:
- В 1983 году специалистами фирмы Borland был разработан диалект Turbo Pascal и интегрированная среда разработки с отладчиком и встроенными библиотеками на его основе. Он оказался очень популярным за счет быстрой компиляции и исполнения кода, поэтому стал основой для программирования прикладных приложений на популярных микрокомпьютерах того времени.
- В 1986 году на базе Pascal появился объектно-ориентированный язык программирования Delphi с собственной средой разработки. Он в целом сохранил простоту и интуитивность своего прародителя и стал распространенным инструментом прикладного программирования. Однако, в отличие от ориентированного на обучение Pascal, язык и среда Delphi стали использоваться и для решения практических задач — например, программирования промышленных контроллеров.
- Важным этапом стало появление свободных версий языка Pascal. Например, Free Pascal и GNU Pascal представляют собой диалекты Object Pascal со свободно распространяемым компилятором. Благодаря ему написанные на этом языке приложения можно было запускать на различных платформах под управлением разных операционных систем.

Курс для новичков «IT-специалист
с нуля» – разберемся, какая профессия вам подходит, и поможем вам ее освоить
Словарь и синтаксис Pascal
Для записи программ на Pascal используются следующие категории символов:
- прописные и строчные латинские буквы;
- арабские цифры;
- специальные символы — подчеркивание, знаки препинания, круглые, квадратные и фигурные скобки, знаки арифметических операций и т.д.
В Pascal предусмотрены комбинированные неделимые символы:
- := (операция присваивания);
- ≥ и ≤ (операция сравнения);
- (* и *) (начало и конец комментария).
С помощью латинских букв записываются служебные слова, то есть единые смысловые элементы с фиксированным значением, например:
- and — и;
- array — массив;
- begin — начало;
- end — конец;
- do — выполнить;
- else — иначе;
- if — если и т.д.
Константы, переменные, программы и прочие объекты в Pascal именуются с помощью любых комбинаций букв, цифр и спецсимволов, отличных от названий служебных слов. Главное правило — начинаться они должны с буквы или символа подчеркивания. Регистр букв в Pascal значения не имеет.
Структура программы, написанной на языке Pascal, состоит из следующих элементов:
- заголовка — служебного слова program, имени программы и точки с запятой;
- секции описания используемых данных — констант, типов, функций, переменных, процедур;
- блока исполнения программы, в котором содержатся операторы, преобразующие данные.
Из всех трех компонентов обязательным является только последний. Программа может не содержать ни заголовка, ни описания данных, но должна включать блок исполнения. Общая структура программы на Pascal выглядит так:
program (имя программы); const (перечень постоянных значений); var (описание переменных); begin (начало исполнительного блока); (оператор 1); (оператор 2); … (оператор n); end.
Для примера, так выглядит самая простая программа вывода на экран фразы «Hello, world!»:
program hello; begin writeln(‘Hello, World!’); end.
Преимущества Pascal
Простой и понятный синтаксис. При разработке Pascal Вирт старался сделать свой язык максимально понятным для новичков. Поэтому он использовал упрощенный и однозначный синтаксис, исключающий множественную трактовку символов. Например, присваивание переменной определенного значения в Pascal выглядит так:
x := x + 1;
А в других языках программирования его запись похожа или неотличима от операции сравнения, что иногда приводит к путанице:
x = x + 1
Компилируемость. Программу, написанную на Pascal, можно скомпилировать (перевести в машинный код), переслать другому человеку, и он без труда запустит ее на своем ПК. Чтобы сделать это с алгоритмом, написанным на современных языках программирования, таких как С#, JavaScript или Python, получателю нужно сначала установить на своем компьютере виртуальную машину и/или интерпретатор — без них скрипт просто не будет работать.
Дружелюбность. Благодаря строгой типизации и структурированности Pascal прощает программисту многие ошибки. Программы, написанные на этом языке, менее подвержены критическим отказам. Даже неочевидные ошибки, как правило, быстро обнаруживаются еще на стадии написания и компиляции кода. Во многих других языках баги часто проявляются только на этапе тестирования или эксплуатации написанной программы.
Недостатки Pascal
- Ограниченное взаимодействие с компонентами, написанными на других языках программирования.
- Из-за своей универсальности менее приспособлен для решения некоторых задач, чем более специализированные языки.
- Ограниченные возможности работы с динамической памятью, массивами переменной длины, отсутствие раздельной компиляции и т.д.
Из-за этих ограничений на Pascal написано мало реально используемого программного обеспечения. Тем не менее на более современных диалектах этого языка написаны такие известные продукты, как KMS Player, Skype, файловый менеджер Total Commander и даже некоторые старые игры.
Для чего используется язык Pascal
В своем исходном виде Pascal сегодня практически не используется нигде, кроме как в обучении школьников и студентов азам информатики и программирования. Именно для этого он и был разработан самим Н. Виртом, который отводил прикладной функции языка второстепенное значение. Однако даже в обучении Pascal считается уже устаревшим — ему на смену приходит Python. Этот язык так же прост в освоении, как и Pascal, но чаще применяется в прикладном программировании.
Однако более совершенные диалекты Pascal, такие как Delphi, продолжают использоваться в различных сферах деятельности:
- в бизнесе с их помощью в 90-е и 2000-е годы разрабатывались средства автоматизации производственных процессов. Некоторые компании пользуются ими по сей день, хотя в последние годы более популярно ПО, написанное на языках Python, Java, 1С и т.д.;
- в промышленности на Object Pascal, Turbo Pascal и Delphi широко применялись и ограниченно применяются до сих пор для программирования оборудования, оснащенного микроконтроллерами;
- современные диалекты Pascal и разработанные на его основе языки используются некоторыми производителями домашних ТВ-приставок и других электронных бытовых устройств для написания приложений.
Хотя эра широкого распространения Pascal в информатике и других сферах закончилась, нельзя сказать, что он полностью перестал быть востребованным. До сих пор многие работодатели открывают вакансии программистов, в которых среди прочих требований указывается знание этого языка (точнее, его более совершенных версий вроде Delphi).
Что изучать после Pascal
Язык программирования Pascal и его более современные производные вроде Delphi и Object Pascal в прикладном программировании сегодня применяются сравнительно редко. Однако программист, который знает эти языки, может перейти на более востребованные:
- Go, или Golang — современный язык программирования, разработанный в 2009 году компанией Google. Он тоже относится к компилируемым, но больше подходит для создания прикладного и системного ПО;
- Python — высокоуровневый объектно-ориентированный язык программирования. Не являясь «родственником» Pascal, имеет с ним сходство в плане простоты синтаксиса, строгой типизации, структурированности и процедурности.
Таким образом, появление Pascal в свое время было важной вехой в истории языков программирования. Именно в нем впервые появились многие из тех принципов, на которых строится разработка программного обеспечения сегодня — например, структурированность, простота кода. Знание Pascal и его более современных версий является не бесполезным бременем, а хорошей базой для изучения более современных и востребованных языков программирования.
IT-специалист с нуля
Наш лучший курс для старта в IT. За 2 месяца вы пробуете себя в девяти разных профессиях: мобильной и веб-разработке, тестировании, аналитике и даже Data Science — выберите подходящую и сразу освойте ее.
Как выглядит заголовок программы на языке pascal
В заголовке указывается имя программы и список параметров. Общий вид:
здесь n – имя программы; input – файл ввода; output – файл вывода; x, y – внешние файлы, используемые в программе.
Заголовка может и не быть или он может быть без параметров.
Блок программы состоит из шести разделов, следующих в строго определенном порядке:
- раздел меток (label)
- раздел констант (const)
- раздел типов (type)
- раздел переменных (var)
- раздел процедур и функций
- раздел действий (операторов).
Раздел действий должен присутствовать всегда, остальные разделы могут отсутствовать.
Каждый из первых четырех разделов начинается с соответствующего ключевого слова (label, const, type, var), которое записывается один раз в начале раздела и отделяется от последующей информации только пробелом, либо концом строки, либо комментарием.
Раздел меток (label)
Любой выполняемый оператор может быть снабжен меткой – целой положительной константой, содержащей не более 4-х цифр. Все метки, встречающиеся в программе, должны быть описаны в разделе label.
здесь l1, l2, l3 – метки.
Пример. label 5, 10, 100;
Метка отделяется от оператора двоеточием.
Пример. Пусть выражение a := b имеет метку 20. Тогда этот оператор выглядит так:
Раздел констант (const)
Если в программе используются константы, имеющие достаточно громоздкую запись (например, число пи с 8-ю знаками), либо сменные константы (для задания варианта программы), то такие константы обычно обозначаются какими-либо именами и описываются в разделе const, а в программе используются только имена констант. Это делает программу более наглядной и удобной при отладке и внесении изменений.
здесь a1 – имя константы, c1 – значение константы.
Пример. const pi = 3.14; c = 2.7531;
Раздел типов (type)
Если в программе вводится тип, отличный от стандартного, то этот тип описывается в разделе type:
где t1 и t2 – идентификаторы вводимых типов.
Затем тип используется при объявлении переменных.
Пример использования нестандартных типов:
Раздел описания типов имеет большое значение в программе на языке Pascal. Если в программе не использовать типы, то можно столкнуться с несовместимостью типов переменных, даже если они описаны одинаково.
Раздел переменных (var)
Пусть в программе встречаются переменные v11, v12,…; все они должны быть описаны следующим образом:
здесь v11, v12,… — имена переменных; type1 – тип переменных v11, v12,…; type2 – тип переменных v21, v22,….
Пример. var k, i, j: integer; a, b: real;
Каждая переменная должна быть описана до ее использования в программе и отнесена к одному и только одному типу. Названия разделов (const, type, var…) указываются только один раз.
Таким образом, в разделе var вводится имя каждой переменной и указывается, к какому типу эта переменная принадлежит. Тип переменной можно задать двумя способами: указать имя типа (например, real, color и т.д.), либо описать сам тип, например: array[1..16] of char
Раздел процедур и функций
Здесь присутствуют заголовки и тела пользовательских процедур и функций.
Раздел действий (операторов)
Эта часть программы начинается с ключевого слова begin и заканчивается словом end, после которого должна стоять точка. Раздел действий есть выполняемая часть программы, состоящая из операторов.
Структура программы в Pascal
Любая программа, написанная на языке Pascal состоит из заголовка программы и некоторого блока. Блок содержит раздел описаний, в котором определяются все локальные по отношению к данной программе объекты, и раздел операторов. Он задает действия, которые необходимо выполнять, над этими объектами.
Заголовок программы
В заголовке программе дается некоторое имя. Обычно стараются выбирать имя, отражающее основную функцию, выполняемую программой. Заголовок всегда начинается со служебного слова program , после которого через пробел пишется имя программы. Оно может состоять из символов английского алфавита, цифр и знака подчеркивания. Имя программы всегда должно начинаться с буквы.
В имени программы нельзя использовать какие-либо предописанные имена (зарезервированные слова). Они используются в программе только в том значении, которое зафиксировано для них разработчиками языка Pascal. Ниже приведен список таких слов.
| and | end | nil | set |
| array | file | not | then |
| begin | for | of | to |
| case | function | or | type |
| const | goto | packed | until |
| div | if | procedure | var |
| do | in | program | while |
| downto | label | record | with |
| else | mod | repeat |
Заголовок носит чисто информативный характер и никак не влияет на программу. Программу можно написать и не используя его. После имени программы в ранних редакциях языка указывались круглые скобки и в них давались имена входных и выходных файлов задачи. В последних версиях языка Pascal имена входных и выходных файлов в заголовке программы отсутствуют.
Пример правильного написания заголовка:
Пример неправильного написания заголовка:
Label — раздел описания меток
Любой оператор программы можно маркировать, поставив перед ним через двоеточие метку, тем самым появляется возможность ссылаться на эту метку при помощи оператора перехода goto . Однако такая метка, прежде чем она будет использована, должна быть описана в разделе описания меток. Этот раздел начинается со слова Label .
Имя метки может включать в себя буквы английского алфавита, цифры и знак подчеркивания. При этом, в отличии от имени программы метка может начинаться с цифры, да и вообще состоять только из цифр, но это число должно представлять собой целое число без знака, лежащее в диапазоне от 0 до 9999.
Пример правильного написания меток:
Раз уж разговор зашел про метки, то нужно сказать, что использование меток и оператора перехода goto не желательно при написании программы на Pascal. Применять его стоит только в необычных, исключительных ситуациях, когда приходится нарушать естественную структуру алгоритма. Частое появление в программе на Pascal оператора перехода свидетельствует о том, что программист еще не научился думать на Pascal.
Этот раздел необязателен, если у вас в программе не используются метки.
Const — раздел определения констант
Константы — это величины, которые не меняют своих значений в процессе выполнения программы. Допустим, в вашей программе часто приходится оперировать с числом 3,14 (число Пи). Чтобы каждый раз не вводить это число, мы определяем константу с именем Pi и в вычисления уже подставляем ее.
Использование имен констант делает программу более «читаемой» и способствует улучшению ее документируемости. Кроме того, это позволяет программисту сгруппировать в начале программы величины, зависящие от машины или характерные для данного примера: здесь они более заметны и их легче изменить. Тем самым улучшается переносимость программ и их модульность.
Начинается данный раздел со служебного слова Const . Далее идут описания констант, каждое из которых начинается с имени константы, затем идет символ = (равенство), после чего пишется константа или выражение, составленное из констант. Завершается каждое описание точкой с запятой.
Константа может иметь только предопределенный (стандартный) тип данных. Тип присваивается константе по внешнему виду значения и в соответствии с этим типом отводится память для хранения значения константы.
В качестве расширения стандартного Паскаля разрешено использовать выражения, составленные из ранее определенных констант и некоторых стандартных функций: Abs, Chr, Hi, Length, Lo, Odd, Ord, Pred, Prt, Round, SizeOf, Succ, Swap, Trunc . Константные выражения вычисляются компилятором без выполнения программы на этапе ее создания. Пример: Этот раздел также необязателен, если у вас в программе не используются константы.
Type — раздел описания типов
Помимо стандартных типов данных в Pascal (Real, Integer, Boolean, Char) пользователь может задать новые типы. Структура раздела описания типов имеет вид:
Имя типа представляет собой идентификатор, который может употребляться в других типах, описанных вслед за данным типом. Вообще, новые типы можно определять и в разделе переменных Var, поэтому можно обойтись без этого раздела. Приведу несколько примеров описания типов:
Var — раздел описания переменных
Этот раздел является обязательным. Переменные отличаются от констант тем, что им можно присваивать новые значения при исполнении программы. Любая переменная, которая будет использована в программе должна быть описана. Что включает в себя описание переменной? Это значит, что переменной должен быть присвоен какой-либо тип данных, который характеризует множество значений, которые может принимать объект; множество операций, которые могут применяться к объекту; размер памяти, занимаемый объектом.
Начинается этот раздел с предописанного слова var . Следом идут описания переменных, каждое из которых начинается со списка имен переменных, разделяемых запятыми, затем идет символ : (двоеточие), затем указывается тип этих переменных. Завершается каждое описание точкой с запятой.
Структура раздела имеет вид:
Тип переменных представляет собой имя (идентификатор), описанный в разделе TYPE при явном описании типа, или собственно описание типа в случае его неявного задания. Примеры описания переменных:
Function, Procedure — раздел описаний процедур и функций
В разделе Function и Procedure описываются пользовательские процедуры и функции, если таковые имеются. Если их нет, то этот раздел не обязателен в программе.
Процедура представляет собою подпрограмму и активируется (начинает выполняться) через оператор процедуры. Функция — это тоже подпрограмма, но она выдает некоторое значение — результат и поэтому используется, как компонента выражения.
Структура раздела имеет вид:
Структура процедур и функций та же самая, что и у основной программы. Отличие описаний состоит в том, что идентификаторы констант, переменных, процедур и функций, описанных в соответствующих разделах описаний пользовательских процедур и функций, распространяются только на блоки, где они описаны и на блоки внутренние по отношению к ним. На внешние блоки, в том числе на тело основной программы, они не распространяются.
Как выглядит заголовок программы на языке pascal
ЗНАКОМСТВО С ЯЗЫКОМ ПАСКАЛЬ
Программа на языке Паскаль близка по своему виду к описанию на алгоритмическом языке. Если сравнить алгоритм решения задачи рассматриваемой ранее с соответствующей программой на Паскале:
Необходимо создать алгоритм для вычисления площади прямоугольно треугольника, если известны длины его катетов.
На алгоритмическом языке это будет выглядеть так:


На Паскале:
Структура программы на Паскале
Заголовок программы начинается со слова Program , за которым следует произвольное имя, придуманное программистом:
Имя программы, имена констант, переменных и других объектов программы называются ИДЕНТИФИКАТОРАМИ. Они записываются по правилам:
1. Имя должно лаконично отражать сущность объекта.
S,v,t — общепринятые обозначения;
Summa, N_max — значения суммы номера максимума.
2. Длина идентификатора не должна превышать 127 символов, но для Паскаля значимы только первые 63 знака.
3. В запись идентификатора могут входить только цифры, английские буквы и знак подчеркивания.
4. Начинаться идентификатор должен с буквы или знака подчеркивания.
5. Маленькие и большие буквы в записи идентификаторов Паскаль не различает .
Раздел описания переменных начинается со слова Var ( variables – переменные ), за которым идет список имен переменных через запятую. Тип указывается после двоеточия. В стандарте языка Паскаль существует два типа числовых величин: вещественный и целый .
Слово integer обозначает целый тип (является идентификатором целого типа). Вещественный тип обозначается словом real . Например, раздел описания переменных может быть таким:
var a, b: integer; c, d: real;
Идентификаторы переменных составляются из латинских букв и цифр; первым символом обязательно должна быть буква.
Раздел операторов – основная часть программы. Начало и конец раздела операторов программы отмечаются служебными словами begin (начало) и end (конец).
В самом конце программы ставится точка:
Операторы ввода, вывода и присваивания
Ввод исходных данных с клавиатуры происходит по оператору read или readln :
При выполнении команды ввода компьютер ожидает действий пользователя. Пользователь набирает на клавиатуре значения переменных в том порядке, в каком они указаны в списке, отделяя их друг от друга пробелами. Одновременно с набором данных на клавиатуре они появляются на экране. В конце нажимается клавиша (< ENTER >).
Разница в выполнении операторов readln и read состоит в том, что после выполнения ввода по оператору readln экранный курсор перемещается в начало новой строки, а по оператору read этого не происходит.
Вывод результатов происходит по оператору write или writeln :
Результаты выводятся на экран компьютера в порядке их перечисления в списке. Элементами списка вывода могут быть константы, переменные, выражения.
Разница выполнения операторов writeln и write состоит в том, что после выполнения вывода по оператору writeln экранный курсор перемещается в начало новой строки, а по оператору write этого не происходит.
Арифметические выражения
Арифметический оператор присваивания на Паскале имеет следующий формат:
Арифметическое выражение может содержать числовые константы и переменные, знаки арифметических операций, круглые скобки. Кроме того в арифметических выражениях могут присутствовать функции.
Общая структура программы Паскаль
В этой статье ознакомимся с общей структурой программы на языке Паскаль. Это необходимо, чтобы понимать как организована программа на Паскале, с чего ее обязательно начинать, какими командами заканчивать и т.д. Итак, общая структура программы Паскаль состоит из: в состав любой программы на Паскале входит:
Заголовок в программе Паскаль:
Заголовок — это имя программы.
Пример:
Раздел описаний в программе Паскаль:
Раздел описаний содержит в себе следующие разделы: 1) раздел подключаемых модулей (библиотек), определяющийся через служебное слово uses. Данный раздел включает имена подключаемых модулей (библиотек), которые либо написаны пользователем, либо уже содержаться в системе Turbo Pascal. Раздел uses должен находится в самом начале раздела описаний (помните об этом). Имена библиотек и модулей разделяются запятыми.
Пример:
2) в разделе описания меток должны быть перечислены все метки, которые пользователь использует в программе. При этом любой оператор мы можем пометить меткой, имя которой задается по правилам образования идентификаторов в Турбо Паскаль. Метками могут быть любые числа, но только без знака, содержащие не более 4-х цифр. Метка всегда устанавливается перед оператором и отделена от него двоеточием. Пример:
3) раздел описания констант дает возможность использовать имена в качестве синонимов констант. Пример:
4) В разделе описания переменных var указываются все переменные (определяя их тип), которые впоследствии будут использованы в программе. Пример:
t,w,k: integer;m,n:
char; l,p: boolean;
Что же касается описания типов, процедур и функций, то это будет изучено в дальнейшем, а пока, рассмотрим еще один раздел — раздел операторов.
Раздел операторов Pascal:
Раздел операторов — это ничто иное как составной оператор, содержащий между служебными словами begin и endпоследовательность неких операторов, которые разделяются символом «;». Исходный текст программы оканчивается символом «.». Внизу представлена программа, вычисляющая сумму 2-х чисел:
Похожие публикации:
- Как выровнять текст по центру в css по вертикали
- Как двигать картинку в css
- Как убрать обводку у select css
- Как убрать подчеркивание ссылки в css
