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

Команда множественного выбора CASE



Назначение: позволяет осуществить в программе выбор между альтернативами не используя большого числа предложений IF.

CASE < выражение > OF

<вариант 1>: <команда>;

список <вариант 2>: <команда>;

вариантов..………….......................

<вариант n>: <команда>

ELSE <команда>;

END;

Выражение может принимать значения типа INTEGER, а так же BOOLEAN, CHAR (с ними можно познакомиться самостоятельно).

<вариант> - это константы того же типа.

Работа: вычисляется значение выражения, стоящего между словами CASE и OF. Если его значение совпадает с одной из констант списка вариантов, то выполняется предложение этого варианта. Если же значение выражения не совпало ни с одним вариантом, то выполняется предложение между словами ELSE и END.

Замечания:

- ELSE< команда>; может и не быть;

- в варианте можно использовать несколько констант;

- нельзя использовать одну и ту же константу в нескольких вариантах списка.

Примеры:

А)Var

A:INTEGER;

BEGIN

Write (‘Сколько баллов набрал?’);READ (А);

CASE A OF

1: WRITE('единица');

2: WRITE('двойка');

3: BEGIN

WRITE('троечка');

WRITE('АХ');

END;

4,5:WRITE('МОЛОДЕЦ');

6..10: WRITE ('ВСЕ ПРЕКРАСНО')

ELSE WRITE('Ничего, все еще впереди');

END; {CASE}

Б) Var

W:CHAR;

WRITE('Будешь еще играть(Д/Н)?'); READ(W);

CASE W OF

'D','Д',’д’,’d’:WRITE ('Тогда продолжим');

'N','Н',’н’,’N’:WRITE('Тогда до свидания');

END;

Итог. Используй IF, если из двух путей решения задачи надо выбрать один, а если путей много, то используй CASE.

Вот как с этой командой будет выглядеть наш тест.

Var

Otv:String;

N:Integer;

BEGIN

Writeln (‘Сейчас загадаю 2 загадки, а Вы их отгадайте’);

N:=0;

Writeln (‘Висит груша, нельзя скушать. Что это?’); Readln(Otv);

If (Otv=’Лампочка’) Or (Otv=’лампочка’) Then N:=N+1

Else N:=N+0;

Writeln (‘Зимой и летом одним цветом. Что это?’); Readln(Otv);

If (Otv=’ель’) Or (Otv=’елка’) Then N:=N+1

Else N:=N+0;

Case N of

2: Writeln(‘Вы - гений’);

1: Writeln(‘Вы - талант’);

0: Writeln(‘Вам надо учиться и учиться…’);

end;

END.





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



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