Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Ветвление по ряду условий (оператор case)

Читайте также:
  1. Блоки с разветвлением
  2. Глава 57. Минимальные расчетные показатели учета местных климатических условий
  3. Зависимость качества урожая от сорта, почвенно-климатических условий и сроков уборки.
  4. Задание 2. Ввод условий отбора записей
  5. Задание условий выполнения макрокоманд
  6. Классификация условий труда

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

Пример 4 Преобразование введенного целого числа из диапазона (0..4) в его словесное представление

Program Digit;
var
Num: integer;
begin
write('Введите число:');
readln(Num);
if Num = 0 then
writeln('Нуль');
if Num = 1 then
writeln('Один');
if Num = 2 then
writeln('Два ');
if Num = 3 then
writeln('Три ');
if Num = 4 then
writeln('Четыре');
readln end.

Выполним ту же задачу, используя другую управляющую структуру — оператор выбора case... of.
Формат записи оператора таков:

Case <выражение порядкового типа> of
<значение1>:<оператор1>;
<значениеN>:<операторN>
else <оператор>
end

Пример 4.1 Использование структуры case... of для перевода целого числа в его словесное представление

Блок-схема Программа
Program Digit; var Num: integer; begin write('Введите число:'); readln(Num); case Num of 0: writeln('Нуль'); 1: writeln('Один'); 2: writeln('Два'); 3: writeln('Три '); 4: writeln('Четыре') end; readln end. Переменная Num является селектором в операторе case. По значению селектора происходит переход на соответствующую метку.

Селектор должен принадлежать к порядковому типу (то есть он не может иметь тип real)!

При переходе на метку может выполняться целый блок операторов, который оформляется с помощью структуры begin... end.

При записи меток в операторе case можно использовать интервальный тип. Например, интервал для латинских заглавных букв записывается: 'A'..'Z'.
Если нужно учесть строчную латиницу, то интервал
для меток будет выглядеть так: 'A'..'Z','a'..'z'.


Пример.5. Определение номера квартала по введенному номеру месяца

Program Digit;
var
Num:integer;
begin
write('Введите номер месяца:');
readln(Num);
case Num of
1,2,3: writeln('Первый квартал');
4,5,6: writeln('Второй квартал');
7.. 9: writeln('Третий квартал'); { метка 7..9 -
интервал чисел от 7 до 9: то же самое, что и 7,8,9}
10..12: writeln('Четвертый квартал')
else writeln('Некорректный ввод')
end;
readln
end.

Пример №6 Определить является ли введенное с клавиатуры число четным или нечетным.

program pr7;

var n:integer;

begin

writeln('Введите число');

read(n);

case n mod 2 of

1: writeln(n,'- нечетное');

0: writeln(n,'- четное');

end;

end.

Пример №7 Следующая программа по номеру месяца определяет время года.

program pr8;

var month: integer;

begin

writeln('Введите число - номеp месяца');

read(month);

case month of

12,1,2: writeln(month,' - зимний месяц');

3,4,5: writeln(month,' - весенний месяц');

6,7,8: writeln(month,' - летний месяц');

9,10,11: writeln(month,' - осенний месяц');

else writeln('Пpо это мне неизвестно!');

end;

end.


Дата добавления: 2015-10-29; просмотров: 238 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Условный оператор if... then ... else| Вычислить значение функции. Осуществить вывод значений вводимых исходных данных и результат вычисления значения функции, сопровождая вывод наименованием переменных.

mybiblioteka.su - 2015-2024 год. (0.006 сек.)