Читайте также: |
|
Оператор 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 | | | Вычислить значение функции. Осуществить вывод значений вводимых исходных данных и результат вычисления значения функции, сопровождая вывод наименованием переменных. |