Лекции «Программирование на Паскале»
1. Типы данных
Для хранения информации в оперативной памяти машины в языке Паскаль используются переменные. Они могут быть различных типов:
· целых чисел (integer);
· действительных чисел (real);
· символьный тип (char);
1.1. Целые типы (INTEGER)
Переменная целого типа (INTEGER) содержит любое десятичное число без точки, находящееся в диапазоне - 32768 до + 32767.
Например,
VAR
N:INTEGER;
BEGIN
N:=5;
1.2. Вещественные типы (REAL)
Вещественные типы представляют собой числа с дробной частью. . Например,
VAR
X:REAL;
BEGIN
X:=24.7;
2. Выражения
2.1. Стандартные функции
Для выполнения часто встречающихся операций, не предусмотренных словарем языка, в Паскале существуют стандартные функции
Функции
Математическая запись | Запись на Паскале |
|x| | ABS(x) |
x2 | SQR(x) |
| SQRT(x) |
cos x | COS(x) |
sin x | SIN(x) |
дробная часть х | FRAC(x) |
целая часть х | TRUNC(x) |
округление х | ROUND(x) |
2.2. Арифметические выражения
Выражение может быть арифметическим, логическим или литерным. Важно, чтобы тип величины был согласован с видом выражения.
Арифметические выражения на Паскале должны быть записаны в так называемой линейной записи согласно следующим правилам:
· Выражение записывается в одну строку
· Используются только круглые скобки, при этом количество открывающихся скобок равно количеству закрывающихся
· Нельзя записывать подряд два знака операций
· Знак умножения всегда указывается явно
· Числитель и знаменатель дроби надо брать в круглые скобки
Примеры выражений
Математическая запись | Запись на Паскале |
3x + 2,5x2 | 3*х + 2.5 * SQR(x) |
| х/у+(0.1+х)/(у-х) |
| 2 / х * (l-(x+SIN(x)) / ABS(x+3)) |
| SQR(COS(x))+SQRT((y+3) /x) |
3. Ввод и вывод данных
3.1. Ввод данных - READLN
Исходные данные надо ввести в память компьютера. Наиболее широко используется ввод значений исходных данных непосредственно с клавиатуры компьютера, с помощью оператора READLN.
READLN(x);
3.2. Вывод данных - WRITELN
Вывод данных обеспечивается стандартной процедурой WRITELN, после которой в скобках через запятую записываются константы и имена тех переменных, значение которых надо вывести на экран. При этом, если в программе встречается процедура WRITELN, то на экран выводится:
· текстовая константа без апострофов,
· значение переменной вместо имени переменной.
WRITELN(‘Значение X=’,X);
3.3. Поясняющий текст при вводе данных
При вводе данных программа будет ожидать от пользователя ввода значений, однако пользователь не всегда знает, что ему необходимо делать. Поэтому перед процедурой ввода вызывается процедура вывода запроса, например:
WRITELN('Введите число: ');
READLN(N);
В этом случае на экран будет выдан запрос "Введите число:", и только потом программа будет ожидать ввода числа.
4. Условный оператор
При решении задач нередко возникает ситуация, когда действие осуществляется в зависимости от некоторого условия. Для программирования проверки условия и выбора действия в зависимости от выполнения этого условия используются условные операторы.
Полная форма условного оператора
| Паскаль |
IF условие THEN оператор 1 ELSE оператор 2; |
Внимание! Перед ELSE точка с запятой никогда не ставится!
Краткая форма условного оператора
Иногда при решении задач какое-либо действие надо исполнять только при выполнении условия, в противном случае никаких действий производить не надо. Для этого в Паскале предусмотрена краткая форма условного оператора, когда часть ELSE может быть опущена.
| Паскаль |
IF условие THEN оператор 1;
|
Полная форма условного оператора с использование составного оператора
| IF условие THEN BEGIN оператор 1; оператор 2; ... оператор n; END ELSE BEGIN оператор 1; оператор 2; ... оператор m; END; |
Краткая форма условного оператора с использование составного оператора
| IF условие THEN BEGIN оператор 1; оператор 2; ... оператор n; END;
|
5. Основные операторы языка Паскаль.
Название | Блок-схема | Операторы |
Начало программы |
| PROGRAM имя; VAR A:INTEGER; BEGIN |
Окончание программы |
| END. |
Вычисление |
| S:=A+B; |
Ввод данных |
| WRITELN(‘Введите X’); READLN(X); |
Вывод данных |
| WRITELN(‘S=’,S); |
Условие (полная форма) |
| IF X>Y THEN X:=2*X ELSE Y:=2*Y; |
Условие (краткая форма) |
| IF X=Y THEN S:=X+Y; |
Условие (полная форма с исполь-зованием BEGIN END) |
| IF X>Y THEN BEGIN X:=2*X Y:=Y-X; END ELSE BEGIN Y:=2*Y; X:=X-Y END |
Условие (краткая форма с исполь-зованием BEGIN END) |
| IF X=Y THEN BEGIN X:=X+10; S:=X+Y; END; |











