Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по паскалю.doc
Скачиваний:
1
Добавлен:
03.01.2020
Размер:
582.14 Кб
Скачать

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

ОПЕРАТОР ПРИСВАИВАНИЯ в Паскале обозначается сочетанием двух символов «:=» и служит для выполнения следующих действий:

А) для присваивания начального значения переменной, например,

Х:=0; Z:=2.145; L:=false; C:=’Вася’;

Б) для изменения значения переменной, например,

X:=X+1; Z:=Z-0.005;

В) для записи в переменную результата вычисления по формуле, например,

S:=S0+V*T; Y:=(A*X+B)/sqr(C*X +2*D);

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

В зависимости от типов переменных, констант, функций и операций над ними различаются выражения арифметические, логические и строковые. Результатом вычисления по формуле является значение соответствующего типа: для арифметического выражения – целое или вещественное число, для логического выражения – значения False или True, для строкового – последовательность символов, заключенных в апострофы ‘значение строковой переменной’. Логические выражения играют большую роль в программировании, так как они позволяют формулировать в задачах условия типа «если…то…», «до тех пор пока…», «выполнять, пока не…». Логические выражения могут включать в себя только логические переменные, связанные логическими операциями, например, not (A and B) or C), а также содержать арифметические или строковые выражения, например, в выражениях отношения:

(А+C) >=(D/F), Х<3.5, P=’’.

Последнее выражение представляет собой условие «переменная P равна пустой строке».

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

R2 = X2 + Y2 , то есть задание всех точек круга, можно записать в виде неравенства R2 >= X2 + Y2 . Описание полуплоскости, лежащей справа от прямой Y=X, будет иметь вид Y<=X. Логическое умножение неравенств (R2 = X2 + Y2 )and (Y<=X) определяет пересечение круга и полуплоскости (см. рис. ).

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

1) A*B-C/D*E и A*B-C/(D*E)

2) X1 and not X2 or not X1 and not X2 и

X1 and not X2 or not (X1 and not X2)

В первом примере при Е=0 левое выражение равно А*В, а значение для правого выражения не существует, так как деление на ноль невозможно. Во втором примере после преобразования первое выражение равно not X2, а второе выражение равно логическому true.

Таблица приоритетов арифметических и логических операций, определяющих порядок их выполнения в бесскобочных выражениях или в выражениях внутри скобок:

Приоритет операций

Операции

1

Not

2

And, *, /, div, mod

3

Or, Xor, +, -

4

Операции отношения >,<,>=,<=,=,<>

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

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

  1. из-за необходимости разветвления программы по некоторому условию, для чего в языках программирования предусматриваются условные операторы (IF,CASE);

  2. из-за необходимости повторного (неоднократного) выполнения линейного участка программы, что обеспечивается применением операторов цикла (FOR, WHILE, REPEAT).