Практическая работа №41
Оператор выбора CASE
Цель работы: Овладеть техникой составления программ с элементами выбора действий в зависимости от выполняемых условий.
Обеспечивающие средства: Сборник описаний практических работ по программированию на Turbo-Pascal; персональный компьютер.
Задание: Составить программы, используя оператор выбора CASE.
Требования к отчету: Итоги практической работы представить в виде блок-схемы алгоритма и текста программы, привести значения исходных данных и значения полученных результатов, ответить на контрольные вопросы.
Технология работы:
Оператор выбора используется в тех случаях, когда в зависимости от значения какого-либо выражения необходимо выполнить один или несколько возможных операторов программы.
Структура оператора такова:
case <выражение выбора > of
список констант 1: оператор 1;
список констант 2: оператор 2;
….
end;
Оператор выбора работает следующим образом. Вначале вычисляется значение выражения выбора, а затем в последовательности списка констант выбирается та константа, которая совпадает с вычисленным значением выражения, и выполняется соответствующий ей оператор. Затем управление передается за пределы оператора выбора. Если значение выражения не совпадает ни с одной константой, то управление сразу передается за пределы оператора выбора.
Значения выражения и констант должны быть одного и того же типа (кроме real), integer, boolean, char, ограниченный тип или тип «перечисление»
Пример: case i+1 of
2: x:=0;
100, 3: x:=x*x;
4: x:=sin(x)
end;
Если значение i+1 есть 100 или 3, то выполняется оператор x:=x*x, а затем управление передается на оператор A:=A+1.
Выполните следующее упражнение:
Упражнение 1. Наберите текст программы с использованием изученного оператора.
Program Pr5pr1; {Название программы}
Var I: char; {Объявление переменной I}
Begin {Начало программы}
Read (I); {Ввод и чтение значения переменной I}
Case I of {Выбрать путь решения по значению переменной I}
‘A’..’Z’, ‘a’..’z’: Writeln(‘ Введена буква’); {если переменная I совпадает с одной из
букв диапазона, то напечатается фраза “Введена буква”}
‘0’..’9’: Writeln(‘ Введена цифра‘) {если переменная I совпадает с одной из цифр
диапазона, то напечатается фраза “Введена цифра”}
else Writeln(‘ Введен символ, отличный от буквы и цифры‘) {если символ не цифра и
не буква то напечатается текст «Введен символ, отличный от буквы и цифры» }
end {Конец работы оператора выбора}
end. {Конец программы}
Сохраните программу под именем TP5PR1. Выполните программу. Проанализируйте результат.
Создайте и выполните следующие программы самостоятельно.
- Создать программу, в которой при вводе значения среднего балла 5 напечатать фразу: «ОТЛИЧНИК», 4 - «ХОРОШИСТ», 3 - «ТРОЕЧНИК», 2 - «ДВОЕЧНИК». Сохраните программу под именем TP5PR2.
- Создать программу, в которой при вводе буквы «N»печаталось бы слово «Нет», а при вводе буквы «Y» -печаталось слово «Да». Сохраните программу под именем TP5PR3.
- Сохраните созданные программы.
- Покажите работу преподавателю.
- Завершите работу Turbo-Pascal.
- Какова функция оператора выбора?
- В программах какого типа используется оператор выбора?
- Константы какого типа могут быть использованы в операторе выбора?
- Какое соответствие должно быть между выражением оператора выбора и его константами?