Студопедия

Главная страница Случайная страница

Разделы сайта

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






Оператор выбора.






 

Для ситуаций, где имеется несколько (три и более) альтернатив, вместо условного оператора больше подходит оператор выбора.

 

Общая форма записи:

 

case < выражение-селектор> of

< список значений 1>: < оператор 1>;

< список значений 2>: < оператор 2>;

…………………………: …………………;

< список значений N>: < оператор N>;

else < оператор>;

end;

 

Принцип работы оператора выбора: при выполнении данного оператора вначале вычисляется значение выражения-селектора стоящего после зарезервированного слова case. Затем выбирается тот список значений, которому принадлежит полученное значение, и выполняется соответствующий оператор, следующий за двоеточием. Оператор стоящий после зарезервированного слова else выполняется если ни один из списков значений не удовлетворил значению выражения-селектора и может отсутствовать. В списках значений допустимыми являются скалярные типы переменных, которые включают целые и исключают вещественные типы. Любое заданное значение выражения-селектора может входить в список значений неоднократно, но выполнятся будет лишь первая подходящая ветвь.

 

Рассмотрим примеры.

Пример1. Вывести на экран словесную интерпретацию введенного однозначного натурального числа.

 

Program ramdjon;

Digit: integer;

Begin

Write (‘ввести одно число’);

Readn (digit);

If (digit< 0) or (digit> 9)

Then

Writeln (‘Вы ввели не однозначное число! ‘)

Else

Case digit of

0: writeln ('ноль’);

1: writeln (‘один’);

2: writeln (‘два’);

3: writeln (‘три’);

4: writeln (‘четыре’);

5: writeln (‘пять’);

6: writeln (‘шесть’);

7: writeln (‘семь’);

8: wirteln (‘восемь’);

9: writeln (’девять’);

End;

End.

Пример2. Дано натуральное число N. Преобразовать его в зависимости от остатка деления числа N на число 17 по правилу:

если остаток равен 0, то N должно стать равным тоже 0;

если остаток равен 1 или 6, то N должно стать равным -N;

если остаток равен 2, 3 или 5, то N должно стать равным 2N;

если остаток равен 4, то N должно стать равным 3N;

в остальных случаях N равняется 5N.

Program Ost;

Var n: word;

Begin

Write (‘Введите число n=’);

Readln (n);

Case n mod 17 of

0: n: =0;

1, 6: n: =-n;

2, 3, 5: n: =2*n;

4: n: =3*n;

Else n: =5*n;

end;

Writeln (‘n=’, n);

End.

 

Пример2. Дано целое число N (N< 10000 и N> -10000). Определить какое это число (однозначное, двузначное, трехзначное или четырехзначное).

 

Program Nat;

Var n: integer;

Begin

Write (‘Введите число n=’);

Readln (n);

Case n of

-9..9: Writeln (‘число ’, n, ’ однозначное’);

-99..99: Writeln (‘число ’, n, ’ двузначное’);

-999..999: Writeln (‘число ’, n, ’ трехзначное’);

-9999..9999: Writeln (‘число ’, n, ’ четырехзначное’);

Else Writeln (‘число ’, n, ’ больше 10000 или меньше -10000’);

end;

End.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.