Условный оператор IF
Цель работы: Освоить работу пользователя с командой условного перехода при работе в среде программирования Турбо Паскаль.
Обеспечивающие средства: Сборник описаний практических работ по программированию в среде Pascal; персональный компьютер.
Задание: Составить программы, используя условный оператор.
Требования к отчету: Итоги практической работы представить в виде блок-схемы алгоритма и текста программы, привести значения исходных данных и значения полученных результатов, ответить на контрольные вопросы.
Технология работы:
Условный оператор – позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Таким образом, условный оператор – это средство ветвления вычислительного процесса.
Структура условного оператора имеет следующий вид:
IF <условие> THEN <оператор1> ELSE<оператор2>
где IF, THEN, ELSE – зарезервированные слова (если, то, иначе);
<условие> - произвольное выражение логического типа;
<оператор1>, <оператор2> - любые операторы языка Турбо Паскаль.
Условный оператор работает по следующему алгоритму. Вначале вычисляется условное выражение <условие>. Если результат есть TRUE (истина), то выполняется <оператор1>, а <оператор2> пропускается; если результат есть FALSE (ложь), наоборот, <оператор1> пропускается, а выполняется <оператор2>.
Пример:
Var
X, Y, max: Integer;
Begin
……….
If X > max then
Y := max
Else
Y := X;
При выполнении этого фрагмента переменная Y получит значение переменной X, если только это значение не превышает MAX, в противном случае Y станет равно MAX.
Часть ELSE<оператор2> условного оператора может быть пропущена. Тогда при значении TRUE условного выражения выполняется <оператор1>, в противном случае этот оператор пропускается.
Пример:
Var
X, Y, max: Integer;
Begin
……….
If X > max then
max := X;
Y := Х;
В этом примере переменная Y всегда будет иметь значение переменной Х, а в МАХ запоминается максимальное значение Х.
Выполните следующие упражнения:
Упражнение 1. Составление программы с использованием ранее изученного оператора.
- Наберите текст программы:
Program Vetka; {Программа вводит целое число, сравнивает его с имеющимся и выводит отчет о работе условного оператора}
var
n1 : Integer; {n1 – вводимое целое}
BEGIN
Write (‘Введите n1 = ‘); {Сообщаем о вводе n1}
ReadLn (n1); {Вводим n1}
If n1 = 1 then {Сравниваем n1 c условием}
BEGIN
Writeln (‘Работает ветвь 1, Да ‘); {Сообщаем о работе 1 ветви}
Write (‘n1’, n1); {Выводим n1}
END
Else
BEGIN
Writeln (‘Работает ветвь 2, Нет ‘); {Сообщаем о работе 2 ветви}
Write (‘n1’, n1); {Выводим n1}
END
END.
- Запустите программу на выполнение и проверьте её работу:
Ctrl-F9
Для просмотра результатов выполненной программы необходимо нажать:
Alt-F5
- Сохраните программу на своем диске:
File Save as… A:\TP3PR1
Упражнение 2. Составление программы с использованием ранее изученного оператора.
Наберите текст программы:
Program Vetka_2; {Программа вводит целые числа, вычисляет значения переменных, сравнивает их и выводит отчет о работе условного оператора}
var
a, b, c : Integer; {a, b, c – вводимые целые числа}
x, y : Real; {x, y, – результаты вычислений}
BEGIN
Write (‘Введите a = ‘); {Сообщаем о вводе a}
ReadLn (a); {Вводим a}
Write (‘Введите b = ‘); {Сообщаем о вводе b}
ReadLn (b); {Вводим b}
Write (‘Введите c = ‘); {Сообщаем о вводе c}
ReadLn (c); {Вводим c}
X := a*b-sqr(c); Y := sqr(b+c)-sqr(a);
If x>y then {Сравниваем x и y}
BEGIN
WriteLn (‘X = ‘, x); {Выводим значение Х}
WriteLn (‘Y = ‘, y); {Выводим значение У}
END
Else
Write (‘Условие не выполнено ‘) {Сообщаем о работе 2 ветви}
END.
- Запустите программу на выполнение и проверьте её работу: Ctrl-F9
- Для просмотра результатов выполненной программы необходимо нажать: Alt-F5
- Сохраните программу на своем диске:
File Save as… A:\TP3PR2
Создайте и выполните следующие программы самостоятельно:
Составить программу для условия: если A < B, вычислить А + В, в противном случае вычислить А – В. Сохранить программу на своей дискете под именем TP3PR3;
Составить программу, в которой запросить перевод какого-либо иностранного слова (из языка, который вы изучаете) и проверить правильность ответа. Выдать соответствующее сообщение. Сохранить программу на своей дискете под именем TP3PR5.
- Сохраните созданные программы.
- Покажите работу преподавателю.
- Завершите работу Turbo-Pascal.
Контрольные вопросы:
- Что обозначают служебные слова IF, THEN, ELSE?
- Какой оператор предназначен для создания ветвления в программе?
- Как записывается программа разветвляющейся структуры?
- Какая часть условного оператора может быть пропущена?