Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль_Конспект лекций.doc
Скачиваний:
41
Добавлен:
27.05.2015
Размер:
1.39 Mб
Скачать

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

Присвоить переменной конкретное значение в языке Object Pascal можно двумя способами. Первый способ – это указать переменную в списке ввода оператора Read или Readln. Например:

Read(a, b);

В результате выполнения этого оператора переменным a и b будут присвоены конкретные значения.

Второй способ присвоения переменным значений – это указать переменную в левой части оператора присвоения. В Object Pascal оператор присваивания состоит из двух символов (:=) и отличается от символа операции сравнения (=).

Структура оператора присваивания:

<идентификатор переменной>:= < выражение соответствующего типа>;

Примеры:

А:= 5; B:= 3.7;

N:= Sqr(T) + Sqr(U);

M:= 25 * Т - 80 * L;

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

Обычно ошибки, возникающие при компиляции оператора присваивания, связаны с несоответствием типа выражения типу переменной (Type mismatch), а ошибки во время выполнения возникает из-за неправомочности операции в выражении: деление на ноль (Division by zero), неправильная операция с плавающей точкой (Invalid floating point operation).

5.4 Составной оператор

Часто возникает необходимость объединения нескольких операторов в один составной оператор (тело процедуры, тело оператора ветвления, тело цикла и т. д. ). Для реализации этой потребности в Object Pascal существует возможность организации составного оператора, имеющего следующую структуру.

begin

<оператор 1>;

<оператор 2>;

……………….

<оператор n> ;

end;

Примеры:

1)

begin

writeln(A[i] ) ;

max:= A [ i ] ;

inc(t);

k:= i;

end;

2)

begin

writeln('да');

n:= 1000;

end;

Иногда, ключевые слова beginend называют операторными скобками, так как они окаймляют операторы внутри себя аналогично скобкам в арифметических выражениях..

Простейшим случаем составного оператора является пустой составной оператор:

begin

end;

5.5 Стандартные процедуры и функции

5.5.1 Понятие процедуры и функции

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

В языке Object Pascal принцип модульности обеспечивается использованием подпрограмм-функций, подпрограмм-процедур ( в дальнейшем просто функций и процедур) и библиотечных модулей.

Чтобы обратиться к определённой функции или процедуре в исполнительной части программы необходимо указать её идентификатор и далее в круглых скобках список параметров, передаваемых ей. Заметим, что у функции или процедуры параметры могут отсутствовать. В этом случае после идентификатора функции или процедуры скобки не ставятся.

Функции, при обращении к ней, присваивается значение, соответствующее типу функции (смотри п. 4.3). Поэтому её можно использовать в выражениях. Например:

……………

Y := А*sqrt(Х);

……………

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

В отличии от функций, процедуры нельзя использовать в выражениях. Обращение к процедуре является отдельным оператором. Например:

……………

clrcsr;

……………

В этом фрагменте выполняется вызов процедуры без параметров для очистки экрана.

Часть стандартных процедур и функций, таких как sin, cos и многих других, приведённых ранее в лекциях, можно использовать в программе не предпринимая каких-то специальных мер. Другие организованы в специальные библиотечные модули.

Библиотечный модуль ( в дальнейшем просто модуль) содержит описания подпрограмм (процедур и функций), которые могут использоваться пользователями. Имя этих модулей CRT, SYSTEM, DOS и другие.

Большая часть стандартных процедур и функций находятся в определённых модулях. Следовательно, чтобы использовать требуемую функцию в своей программе, необходимо подключить соответствующий модуль оператором uses c указанием имени модуля. Этот оператор необходимо поставить перед описаниями, то есть после оператора program. Например:

Uses CRT;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]