- •Информатика
- •Введение
- •Алгоритм и программа
- •Интегрированная инструментальная среда turbo pascal 7.0.
- •Начало работы
- •Клавиатура
- •Диалоговые окна
- •Подготовка текста программы Начало работы
- •Ввод текста и внесение изменений в текст программы
- •Компиляция
- •Пробный запуск программы на выполнение
- •Буфер промежуточного хранения
- •Использование справочной системы
- •Сохранение текста программы в файле
- •Отладка программы
- •Завершение работы
- •Алфавит языка
- •Символы, используемые в идентификаторах
- •Разделители
- •Специальные символы
- •Знаки пунктуации
- •Основные типы данных
- •Описание переменных
- •Инструкция присваивания
- •Выражение
- •Тип выражения
- •Выполнение инструкции присваивания
- •Константы
- •Целые константы
- •Вещественные константы
- •Строковые и символьные константы
- •Константные выражения
- •Типизированные константы
- •Стандартные функции
- •Арифметические функции
- •Функции преобразования типа
- •Функции для величин порядкого типа
- •Ввод и вывод информации
- •Инструкции write и writeln
- •Инструкции read и readln
- •Общая структура программы
- •Раздел объявлений и соглашений
- •Заголовок
- •Глобальные директивы компилятора
- •Оператор uses
- •Объявления глобальных меток, констант, типов и переменных
- •Процедуры и функции
- •Заголовок процедуры или функции
- •Объявления локальных меток, констант, типов и переменных
- •Тело процедуры/функции
- •Основной блок программы
- •Управляющие структуры
- •Условие
- •Условный оператор if
- •Условный оператор case
- •Оператор цикла for
- •Оператор цикла repeat
- •Оператор цикла while
- •Оператор безусловного перехода goto
- •Пустой оператор
- •Составной оператор
- •Массивы
- •Объявление массива
- •Некоторые типичные действия с массивами
- •Вывод массива
- •Ввод массива
- •Сортировка массива
- •Сортировка методом прямого выбора
- •Сортировка методом прямого обмена
- •Поиск в массиве
- •Поиск минимального (максимального) элемента массива
- •Операции с матрицами
- •Сложение матриц
- •Транспонирование матрицы
- •Умножение матриц
- •Символы и строки
- •Символы
- •Массив символов
- •Функция length
- •Процедура delete
- •Функция pos
- •Функция copy
- •Процедуры и функции
- •Процедура
- •Функции
- •Параметры-процедуры и параметры-функции.
- •Процедура exit
- •Директивы подпрограмм
- •Директива forward
- •Директивы far и near
- •Директива external
- •Директива assembler
- •Директива inline
- •Директива interupt
- •Рекурсия Понятие рекурсии
- •Пример программы: поиск пути
- •Вывод в файл
- •Объявление файла
- •Назначение файла
- •Инструкции вывода в файл
- •Открытие файла для вывода
- •Ошибки открытия файла
- •Закрытие файла
- •Ввод из файла
- •Открытие файла
- •Чтение из файла
- •Конец файла и конец строки
- •Введение в структурное программирование
- •Рекомендательный библиографический список Основной:
- •Дополнительный:
Условие
В языке Паскаль условие это выражение логического типа (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.