Алгоритмический язык Паскаль
Программа на Р записывается в виде последовательности символов:
заглавные и прописные латинские буквы;
арабские цифры;
знаки препинания ( : ; , . );
знаки операций.
Арифметические операции правила их записи.
Знаки операций: *, /, -, +, div, mod
(a div b) частное от деления а на b
(a mod b)
остаток, после деления а на b.
(а,b-целые).
a mod b =a-((a div b)*b)
17 div 3 = 5 17 mod 3 = 2 8 div 2 = 4 8 mod 2 = 0 1 div 5 = 0
1 mod 5 = 1
При выполнении арифметических операций соблюдаются следующие правила:
Все знаки проставляются a b a*b;
Два знака не могут следовать один за другим n/-2 n/(-2);
Соблюдается иерархия выполнения арифметических операций: стандартные
функции;div, mod; *, /; +, -;
Изменить иерархию можно только с помощью скобок.
Типы переменных.
Переменные на языке Паскаль задаются своими именами (63 символа).
Целочисленные переменные.
127)
231-1)
32767)
65535)
255)
Верхнее граничное значение целочисленных переменных задано в Паскале как
константа и имеет соответствующее имя: Maxint = 32767 (215-1) Maxlongint
= 231-1
Логический тип.
Boolean – логические переменные (1 байт) могут принимать 2 значения:
True (истина)
False (ложь)
Логические переменные могут использоваться только в логических
выражениях. Над ними можно выполнять только 2 операции:
равно (=)
не равно ()
Для идентификаторов имеет место:
False;
;
;
begin
;
end.
Зарезервированные слова:
program – всегда первый;
begin – начало;
end – конец.
– присваивается составителем программы (строится по правилам
переменных).
Описательная часть программы.
Все переменные, используемые в программе должны быть описаны.
Описание начинается со служебного слова var .
program ff;
var
i, n: integer; x,y,z: real;
begin;
………
end.
Список переменных от типа отделяется “:”, одно описание от другого –
“;”, список переменных – “,”.
Метки в программе описываются с помощью служебного слова: label.
Константы : const.
Пользовательский тип данных: type.
Исполнительная часть программы.
Отдельные инструкции, входящие в программу, называются операторами.
Операторы отделяются один от другого – “;”.
Бывают трех типов:
пустой оператор;
простой оператор;
составной оператор.
Составной оператор:
begin
; ; …
end;
Операторы Паскаля.
Оператор присваивания.
“: =” – знак присваивания.
: = ;
Читается одиноково.
Пример:
Паскаль не допускает смешенных выражений. Слева – вещественное, справа –
целое выражение (допустимо).
Если в выражении есть хотя бы одна вещественная переменная, все
выражение будет вещественным.
Операторы ввода-вывода.
READ ()
имя оператора ввода;
список переменных, разделенных запятыми.
WRITE ()
имя оператора вывода;
список переменных вывода, разделенных запятыми.
READLN (a, b, c) – после вода значений a, b и c курсор перемещается на
следующую строку.
WRITELN – без списка вывода можно использовать для пропуска строк при
оформлении вывода результатов.
В операторе WRITE можно использовать формат вывода значений переменных.
Writeln ( ’_ a = ’ , a:8:3, ’_ b = ’, b:4);
при a = 341.154, b = 2
_ a = _ 341.154 _ b = _ 144
при a = 1.3, b = 144
_ a = _ _ _ 1.300 _ b = _ 144
Program _ prim;
сlrscr – оператор гашения экрана;
var a, b: integer;
x ,y: real;
begin writeln (’ введите a, b ’);
readln ( a, b);
x: = a + b; y: = a/b;
writeln (’ x = ’, x:8:3, ’_ _ ’, ’y = ’, y:8:3)
end.
Ключевые слова горят ярче, чем весь текст прогаммы.
Операторы условия и перехода.
Строки программы на Паскале не нумеруются. Отдельные строки в программе
могут иметь метки, к которым можно переходить.
Метки должны быть описаны с помощью ключевого слова
label N1, N2 … ;
в описательной части программы.
9999).
Оператор: GO TO N; -передает управление строке с меткой N.
program pr;
label 3;
var
x, y: real;
begin
3: readln (x, y);
go to 3;
end.
Оператор: IF THEN P1 [ ELSE P2 ]; если то иначе (не
обязательная часть)
– логическое выражение ;
P1, P2 – простой или составной операторы.
По этому оператору:
если – “истинно”, то выполняется P1 (true);
– ” ложно”, то выполняется P2 (false).
Если ELSE – отсутствует и – “ложно”, то управление
передается следующему оператору.
Распечатать наибольшее из двух чисел:
IF a>b THEN write (a) ELSE write (b).
Вычислить значение функции:
If x>=0 then y:= sin(x) else y:= – sin(x);
IF (a>b) and (a>c) THEN writeln (’a = ’, a)
IF a0 THEN
IF ( m div n)>n THEN
m:
= m-n
ELSE
m:
= m + n;
ELSE – всегда относится к ближайшему оператору IF.
Если n>0 и (m div n)>n будет выполнено m: = m-n.
n будет выполнено m: = m + n.
0 – переход к следующему оператору.
Задача:
Program fun;
var
x, y: real;
begin
writeln (’введите x’); readln (x);
if x>90 then writeln (’функция не определена’)
else begin
if x;
где P1, P2, …PN – любые операторы.
По этому оператору выполняется “тело цикла”, а затем проверяется
, если оно не выполнилось, цикл повторяется. И так до тех пор,
пока не будет выполнено.
Необходимо помнить: если сразу выполнилось, цикл будет пройден
один раз.
=0.2
program fun;
var
y, a, x: real;
begin
x: =0; read (a)
repeat
y: = a *sin (x); writeln (y, x); x: = x + 0.2;
until x>1;
end.
Действия, которые подчеркнуты, необходимы для организации цикла.
Оператор цикла с предусловием.
WHILE DO P;
Где P – простой или составной оператор.
По этому оператору проверяется и, если оно выполняется, то
выполняется – P, после чего опять проверяется и т. д.
Итак, P – выполняется до тех пор, пока выполняется .
Если условие ни разу не выполнилось, P – игнорируется, управление
передается следующему оператору.
– ввести с клавиатуры.
Подсчитать среднее положительное и среднее отрицательное значение
функции.
Program cikl;
var
y, x, x k, d x: real;
n, k: integer; SP, n – среднее и
количество положительных значений.
SP, S0: real; S0, k – среднее и
количество отрицательных значений.
begin
writeln (‘ введите x – начальное, x – конечное, d x – шаг’);
read (x, x k, d x);
SP: =0; S0: = 0; n: =0; k: =0;
While x
Нашли опечатку? Выделите и нажмите CTRL+Enter
Оставить комментарий