Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



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

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

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.





Дата публикования: 2015-10-09; Прочитано: 256 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...