Введение в язык программирования Паскаль
Общие сведения о языке.
Язык Pascal (Паскаль) был разработан в 70-х годах 20-го века профессором Швейцарского федерального института технологии в Цюрихе Никалаусом Виртом. Этот язык получил свое название в честь великого французского математика и физика Блеза Паскаля, который в 1642 году изобрел счетную машину для арифметических операций – паскалево колесо. Язык разрабатывался, прежде всего, для целей обучения программированию, но этим не ограничена сфера его применения. Основными достоинствами Паскаля являются легкость при изучении и наглядность программ. Кроме того, в языке Паскаль отражена концепция структурного программирования, имеется богатый набор различных типов данных и программные средства, позволяющие доказывать правильность написанных программ.
В 1984 году на рынке программных продуктов появляется интегрированная система программирования Turbo Pascal. До этих пор предпочтение отдавалось языку программирования Basic – простому, дешевому и легко усваиваемому. Паскаль же был языком для избранных – аппаратно зависимым, дорогим и сложным в обращении. С появлением среды Turbo Pascal положение резко изменилось. Начиная с 6-ой версии, система Turbo Pascal обладает такими качествами, как:
-
многооконный и многофайловый режим работы;
-
встроенные средства верификации данных и программ;
-
режимы трассировки;
-
поддержка работы манипулятора мышь;
-
применение объектно-ориентированного программирования;
-
наличие большой библиотеки модулей и т.п.
В 1992 году фирма Borland International выпустила 2 пакета программирования на языке Паскаль: Borland Pascal 7.0 и Turbo Pascal 7.0.
Общие правила записи программы
При записи программы на языке программирования Паскаль необходимо придерживаться некоторых общепринятых соглашений:
служебные слова, значение которых зарезервировано раз и навсегда, нельзя использовать ни для каких других целей (для обозначения имен переменных, для заголовка программы, для имени процедуры или функции, определенной пользователем и т.п.);
заглавные и прописные буквы не различаются;
буквы русского алфавита могут быть использованы только в комментариях или в строковых выражениях.
Общая структура паскаль-программы может быть представлена в виде следующей схемы:
Program <имя>
var <раздел описания переменных>;
Begin
<раздел операторов>
End.
Основные элементы языка.
Любой язык программирования есть совокупность трех составляющих: набора символов (
алфавита), правил образования (
синтаксис) и истолкования (
семантика) конструкций из символов для задания алгоритмов.
Алфавит.
Основные элементы, составляющие алфавит языка Паскаль, можно разбить на несколько групп в соответствии с их смысловыми значениями:
-
основные символы (буквы латинского и русского алфавитов, цифры, знаки арифметических операций, знаки отношений, кавычки, точка, запятая, точка с запятой, двоеточие, апостроф, скобки и т.п.);
-
служебные слова (and, array, begin, case и т.п.);
-
стандартные идентификаторы (true, false, integer, sin, abs и т.п.).
Данные.
В разделе операторов программы команды определяют, какие действия должны быть выполнены над данными. С каждым элементом данных обычно связаны имя и значение.
Имя используется для обозначения элемента данных. В качестве имени в языке Паскаль используется идентификатор – последовательность букв латинского алфавита и цифр, начинающаяся с буквы. Все идентификаторы, используемые в программе, обязательно должны быть определены, т.е. описаны в соответствующем разделе программы.
В качестве данных в паскаль-программе могут использоваться постоянные и переменные величины. Значение постоянной величины (константы) не изменяется в процессе выполнения программы.
Значение элемента данных определяется типом данных. В языке Паскаль существует 4 стандартных типа данных:
-
integer – целый
значения этого типа данных лежат в диапазоне от -32768 до 32767.
Целые числа в языке Паскаль записываются в обычном виде. Над ними определены следующие операции: сложение (+), вычитание (-), умножение (*), деление (/), нахождение целой части от деления (div) и остатка от деления (mod). Результат всех операций, кроме деления, целое число.
К типу integer относятся некоторые стандартные функции: нахождение предыдущего элемента в множестве (pred), нахождение последующего элемента (succ), модуль числа (abs), квадрат числа (sqr) и др.
Существует несколько ограничений и расширений целого типа:
shortint (-128..127); longint (- 2 млрд. .. 2 млрд.); byte (0.. 255); word (0..65535).
-
real – вещественный
В языке Паскаль существует два способа записи вещественный чисел:
-
с фиксированной десятичной точкой;
-
с плавающей десятичной точкой (в экспоненциальной форме) вида mEn, т.е. m*10n.
Например: 314E-2; 2.76E11; .5E-3
Операции +, -, *. / выполняются с принятой в данном компьютере точностью и не всегда дают точный результат.
-
Boolean – логический или булевский
Множество значений данного типа – это {true, false}.
В языке паскаль определены 6 операций отношения (<, >, <=, >=, =, <>) и логические операции: отрицание (not), логическое умножение – конъюнкция (and), логическое сложение – дизъюнкция (or). С помощью этих операций строятся выражения отношения, значения которых относятся к логическому типу данных.
-
char – символьный
Значением переменной символьного типа является символ. Множество символов отвечает следующим требованиям:
-
любой символ имеет свой порядковый номер;
-
порядковые номера цифр 0..9 упорядочены по возрастанию и следуют друг за другом;
-
порядковые номера букв также упорядочены по возрастанию, но не обязательно следуют друг за другом.
Константы символьного типа записываются в языке Паскаль в виде символов, заключенных в апострофы. Например: ’a’, ’1’, ’z’, ’ш’.
Над данными символьного типа определены только операции отношения.
К символьному типу относятся некоторые стандартные функции языка Паскаль: нахождение порядкового номера символа (ord), нахождение символа по его порядковому номеру (chr).
Структура программы на языке Паскаль.
Program <имя программы>
uses <раздел подключения внешних модулей>;
label <раздел описания меток>;
const <раздел описания констант>;
type <раздел описания типов>;
var <раздел описания переменных>;
procedure <раздел описания пользовательских процедур>;
function <раздел описания пользовательских функций>;
Begin
<раздел операторов или основной блок программы>
End.
Метки перечисляются обычным списком, константы и типы описываются в стиле: <идентификатор>=<значение>, переменные перечисляются с указанием своих типов: <имя>:<тип>.
Комментарии к программе служат для пояснения и представляют собой обычный текст, заключенный в фигурные скобки.