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

Условие

В языке Паскаль условие  это выражение логического типа (BOOLEAN), которое может принимать одно из двух значений: “истина” (TRUE) или “ложь” (FALSE).

В Паскале имеется шесть операторов (см. табл. 7), позволяющих сравнивать между собой значения числовых переменных, а также значение переменной и константу (число).

Таблица 7.

Оператор

Описание

Значение выражения

>

Больше

TRUE, если первый операнд больше второго, иначе FALSE

<

Меньше

TRUE, если первый операнд меньше второго, иначе FALSE

=

Равно

TRUE, если первый операнд равен второму, иначе FALSE

<>

Не равно

TRUE, если первый операнд не равен второму, иначе FALSE

>=

Больше или равно

TRUE, если первый операнд больше или равен второму, иначе FALSE

<=

Меньше или равно

TRUE, если первый операнд меньше или равен второму, иначе FALSE

Использование операторов сравнения позволяет записывать простые условия.

Из простых условий, которые являются выражениями логического типа, можно строить сложные условия с применением к ним, как к операндам, логических операторов: NOTотрицание, AND  “логическое И”, OR  “логическое ИЛИ”, XOR  “логическое исключающее ИЛИ

Результат применения логических операторов к операндам логического типа представлен в таблице 8.

Таблица 8.

Op1

Op2

(Op1)AND(Op2)

(Op1)OR(Op2)

NOT(Op1)

(Op1)XOR(Op2)

FALSE

FALSE

TRUE

TRUE

FALSE

TRUE

FALSE

TRUE

FALSE

FALSE

FALSE

TRUE

FALSE

TRUE

TRUE

TRUE

TRUE

TRUE

FALSE

FALSE

FALSE

TRUE

TRUE

FALSE

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

Выбор

Выбор действия в зависимости от выполнения условия может быть реализован при помощи инструкций IF и CASE.

Условный оператор if

Оператор IF реализует алгоритмическую конструкцию РАЗВИЛКА и изменяет порядок выполнения операторов в зависимости от истинности или ложности некоторого условия. Существует два варианта оператора:

If S then A

else B ; { полная развилка }

и

If S then A ; { укороченная развилка }.

В этих операторах:

S  некоторое логическое выражение, истинность которого проверяется;

A  оператор, который выполняется, если выражение S истинно;

B  оператор, который выполняется, если выражение S ложно.

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

Пример 1:

Вычислить значение функции y, заданной выражением

Блок-схема решения данного примера представлена на рис. 11.

Рис.11. Блок-схема примера 1.

Программа (полная развилка):

Program Example_1 ;

Var

x, y : Real ;

Begin

Write (‘ Введите число x’) ;

ReadLn (x) ;

If x > 0 then y := ln(x)

else

If x = 0 then y := 1

else y := exp(x) ;

WriteLn(‘ Значение y=‘, y)

End.

Программа (укороченная развилка):

Program Example_1 ;

Var x, y : Real ;

Label 1, 2 ,3 ;

Begin

Write(‘ Введите число x’) ;

ReadLn (x) ;

If ( x > 0 ) then Go to 1 ;

If ( x = 0 ) then Go to 2 ;

y := exp(x) ;

Go to 3;

1: y := ln(x) ;

Go to 3;

2: y := 1 ;

3: WriteLn(‘ Значение y=‘, y)

End.