Это старая версия документа!
Паскаль – это императивный, структурированный компилируемый язык программирования.
Часто используется в учебных заведениях в качестве «первого» языка. Является базой для ряда других языков. Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования.
Паскаль, в первоначальном виде, представляет собою чисто процедурный язык и включает множество структур и конструкций с зарезервированными словами наподобие if
, then
, else
, while
, for
, и т. д.
Тем не менее, Паскаль также содержит большое количество возможностей для структурирования информации и абстракций.
В современных диалектах (Free Pascal
) доступны такие операции, как перегрузка операторов и функций.
Функция | Описание | Пример | |
Простые типы данных | |||
---|---|---|---|
DEC(N) | Уменьшение N | DEC(6);//=5 |
|
INC(N) | Увеличение N | INC(5);//=6 |
|
ORD(N) | Порядковый номер N | ORD(5);//=5 ORD('b');//=98 |
|
ODD(N) | Проверка N на (не )чётность | ODD(5);//=True ODD(4);//=False |
|
PRED(N) | Предшествующее значение N | PRED('b');//='a' |
|
SUCC(N) | Последующее значение N | SUCC('B');//='C' |
|
Целые типы данных | |||
A DIV B | Целая часть от деления | 14 DIV 3;//=4 |
|
A MOD B | Остаток от деления | 14 MOD 3;//=2 |
|
TRUNC(X) | Получение целой части вещественного числа X | TRUNC(3.52);\\=3 |
|
ROUND(X) | Округление до целого вещественного числа X | ROUND(3.52);\\=4 |
|
Целые и вещественные типы данных | |||
ABS(NX) | Абсолютная величина NX | ABS(-3);//=3 |
|
SQR(NX) | Квадрат числа NX | SQR(3);//=9 |
|
Вещественные типы данных | |||
ARCTAN(X) | Арктангенс X | ||
COS(X) | Косинус X | COS(PI/3);//=0.5 |
|
EXP(X) | ex | ||
FRAC(X) | Дробная часть X | FRAC(3.52);//=0.52 |
|
INT(X) | Целая часть X | INT(3.52);//=3 |
|
LN(X) | Натуральный логорифм (по основанию e) | ||
PI | Значение $\pi=3.1415926535897932385$ | ||
SIN(X) | Синус X | ||
SQRT(X) | Квадратный корень из X | SQRT(9);//=3 |
|
Логические операнды | |||
NOT | Отрицание | ||
OR | Объединение, или логическое сложение | ||
AND | Пересечение, или логическое умножение | ||
XOR | Исключающее ИЛИ, или сложение по модулю два | ||
Другое | |||
Randomize | Инициализация генератора случайных чисел (обычно, в начале программы, сразу после begin ) | Randomize;
|
|
Random | Генерация случайного числа | a:=random(1000);//a от 0 до 999 |
Можно выделить следующие типы данных:
TYPE NUM = -10..10;
M1 : ARRAY[1..10, 2..20] OF INTEGER;
TYPE HUMAN = RECORD NAME : STRING; DATA : INTEGER; END;
Доступ к полям через имя_переменной.имя_поля.
M = SET OF ['a', 'b', '5', '!'];
тип
)
INPUT, OUTPUT - работа с файлами
Чтение:
READ (A, B, C); //123 2345 -56 <Enter>| READLN(A, B, C); //123 2345 -56 <Enter> |
Запись:
WRITE(); WRITE(J:8, I:12); // Указание позиций вывода WRITELN(); // WRITE + перевод строки
Составной оператор BEGIN … END
представляет собой совокупность последовательно выполняемых операторов, заключённых в операторные скобки BEGIN
и END
.
IF True THEN <1>;
IF True THEN <1> ELSE <2>;
IF True THEN BEGIN <1.1> <1.…> END ELSE BEGIN <2.1> <2.…> END;
CASE PARAMETR OF P1: <1>; P2: <…>; ELSE: <N> END;
Во всех циклах можно использовать процедуры: BREAK
, CONTINUE
.
Общий вид:
FOR I:=N1 TO N2 DO <1>;
Пример:
FOR var i:=1 TO 5 DO write(i); //12345
Пример для уменьшения значения:
FOR var i:=5 DOWNTO 1 DO write(i); //54321
Цикл с постусловием, т.е. цикл будет гарантированно пройден минимум один раз, т.к. проверка осуществляется после каждого выполнения тела цикла.
REPEAT <1> UNTIL <Условие>;
Цикл выполняется до тех пор, пока условие не станет истинным.
Цикл с пред условием, т.к. проверка проводится до начала очередной итерации.
WHILE <Условие> DO <1>;
Файлы бывают 3-х видов:
Program readtextfile; Uses crt; var fl:text; // Для связи программы с текстовым файлом. Файловые переменные, предназначенные для работы с текстовыми файлами, должны иметь тип данных Text. str:string; // Будем использовать для чтения строк из файла. begin clrscr; assign (fl, 'programs\text.txt'); // Теперь посредством файловой переменной «fl» мы можем управлять файлом «text.txt». reset (fl); // Инициация файла – это открытие файла для чтения, записи либо для чтения и записи одновременно. Процедура Reset говорит нам о том, что файл открывается только для чтения. read (fl,str); // Для того чтобы получить доступ к записям, хранящимся в файле, используются процедуры Read, Readln, Write, Writeln. В результате действия процедуры Read из файловой переменной «fl» будет прочитана информация и эта информация будет записана в строковую переменную «str». write(str); // Вывод на экран. close(fl); // Стандартная процедура закрытия файла. readln; end.