Конец холивара. Pascal vs C - [2]

Шрифт
Интервал

Часть первая

Язык программирования Pascal

1. Структура программы на языке Pascal

В программе на Pascal выделяют следующие основные разделы: заголовок программы, описания, операторы. Разделы отделяются друг от друга точкой с запятой. В конце программы ставится точка. Каждый раздел начинается со своего ключевого слова. Ключевым словом заголовка является слово PROGRAM. За ним указывается имя программы и информация об использовании устройства ввода-вывода.

Например: PROGRAM PRIMER1 (INPUT, OUTPUT);

Служебные слова INPUT и OUTPUT сообщают компьютеру, что в программе предусмотрен вывод результатов (OUTPUT), а также ввод значений исходных данных в процессе работы программы (INPUT). Для ряда компиляторов заголовок – раздел не обязательный.

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

Основным разделом программы является раздел операторов, который состоит из последовательности операторов, заключённых в операторные скобки BEGIN и END (такая конструкция называется составным оператором). Операторы отделяются друг от друга точкой с запятой.

Комментарии к программе пишутся после // – строка после этого знака игнорируется при работе программы. Блок между фигурными скобками {…} – тоже игнорируется.

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

В конце программы на Pascal традиционно ставятся две процедуры READLN, чтобы окно программы не закрывалось сразу же после её выполнения. В этом случае оно закроется после нажатия клавиши Enter.

Не забудьте поставить точку в конце программы.

Стандартные типы данных и описание переменных

Значение присваиваемое переменной должно соответствовать её типу указанному в разделе описаний. В Pascal есть четыре стандартных типа величин (помимо тех, что могут быть дополнительно определены в каждой программе – в разделе описания типов данных): INTEGER (целый), REAL (действительный или вещественный), CHAR (литерный), BOOLEAN (логический).


INTEGER – только целые числа.

REAL – любые числа.

CHAR – множество значений символов, используемых компьютером, упорядоченное по возрастанию кодов символов.

BOOLEAN – состоит только из двух значений: TRUE – истина и FALSE – ложь. Над ними определены булевские операции: конъюнкция (AND), дизъюнкция (OR), отрицание (NOT).


AND – и

OR – или

NOT – не


Описание переменной имеет вид: VAR <имя> : <тип>;

Допускается совмещённая форма описания нескольких переменных одного и того же типа, например:


VAR A, B, SUM : REAL;


Именем (идентификатором) может быть любая последовательность букв и цифр, начинающаяся с буквы.

Константы

Константы определяются до переменных, например:


CONST PI=3.14159;

VAR R, L : REAL;

Процедуры ввода и вывода

Для ввода исходных данных применяются процедуры READ и READLN. После выполнения процедуры READ значение следующего данного читается из этой же строки, а при выполнении процедуры READLN – с новой строки.


READ – читать


Например: READ (X);


READLN – читать с новой строки


В процедурах вывода WRITE и WRITELN переменные, значения которых выводятся, перечисляются в круглых скобках через запятую. Последовательность символов, заключённая в апострофы, выводится в неизменном виде.


WRITE – писать


WRITELN – писать с переходом на новую строку


Например: WRITELN (‘X=’, X);


Вывод значений вещественной переменной с фиксированной точкой:


WRITE (X:8:3);


Где 8 – число позиций, а 3 – число позиций после точки.

Арифметические операции

+ – сложение

 – вычитание

* – умножение

/ – деление

DIV – деление нацело

MOD – остаток от деления нацело

Стандартные математические функции

ABS (X) – абсолютная величина X.

ARCTAN (X) – вычисление угла в радианах, тангенс которого равен X.

COS (X) – вычисление косинуса угла в радианах.

EXP (X) – Вычисление e>x.

LN (X) – вычисление натурального логарифма от X.

PI – вычисление числа Пи.

RANDOM – вычисление случайного числа в диапазоне от 0 (включительно) до 1.

RANDOM (N) – вычисление случайного целого числа в диапазоне от 0 (включительно) до N.

ROUND (X) – округление X до ближайшего целого.

SIN (X) – вычисление синуса угла, заданного в радианах.

SQR (X) – вычисление квадрата числа X.

SQRT (X) – вычисление корня квадратного из X.

TRUNC (X) – отбрасывает дробную часть числа X.

Оператор присваивания

Оператор присваивания – :=. Для удобства понимания записи алгоритмов его можно читать, например, так:


X := … – пусть X будет ….

2. Программные конструкции

2.1. Ветвление (выбор)


2.1.1. Альтернатива (условный оператор)

Пример 1.1: Вычисление значений функции Y=1/X.


Если X ≠ 0

то писать (1/X)

иначе писать (‘0 не входит в область определения функции Y=1/X’);


IF X <> 0

THEN WRITE (1/X)

ELSE WRITE (‘0 не входит в область определения функции Y=1/X’);


IF – если.

THEN – то.

ELSE – иначе.


Блок-схема алгоритма вычисления значений этой функции:


Рекомендуем почитать
Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


Геймдизайн. Рецепты успеха лучших компьютерных игр от Super Mario и Doom до Assassin’s Creed и дальше

Что такое ГЕЙМДИЗАЙН? Это не код, графика или звук. Это не создание персонажей или раскрашивание игрового поля. Геймдизайн – это симулятор мечты, набор правил, благодаря которым игра оживает. Как создать игру, которую полюбят, от которой не смогут оторваться? Знаменитый геймдизайнер Тайнан Сильвестр на примере кейсов из самых популярных игр рассказывает как объединить эмоции и впечатления, игровую механику и мотивацию игроков. Познакомитесь с принципами дизайна, которыми пользуются ведущие студии мира! Создайте игровую механику, вызывающую эмоции и обеспечивающую разнообразие.


Обработка событий в С++

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


MFC и OpenGL

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


Симуляция частичной специализации

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


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.