Оператор вибору case ... of
Оператор вибору Case ... of.
Оператор вибору є узагальненням умовного оператора: він дає можливість виконати один з декількох операторів в залежності від значення виразу.
Формат оператора вибору має 2 варіанти запису:
Case вираз of Case вираз of
P1: оператор1; P1: оператор1;
P2: оператор2; P2: оператор2;
... ...
PN: оператор n PN: оператор n
End; Else оператор n + 1
End;
де Case (вибір), of (з), End (кінець) - службові слова;
вираз - повинно мати тип integer або char;
Р1, Р2, РN - можливі значення виразу (мітки варіанта), причому в одному рядку їх може бути кілька через кому, і їх не треба описувати в розділі LABEL.
ПРАВИЛО РОБОТИ ОПЕРАТОРА:
1.Вичісляется значення виразу.
2. Це значення порівнюється з константами, що стоять після слова of
3.Якщо значення виразу одно будь-якої константи, то виконується оператор, що стоїть після цієї константи.
4. Якщо значення виразу не збігається з жодною константою, то управління передається оператору, наступному після слова End;
5. Якщо використовується 2-ий формат запису оператора, то управління передається оператору, наступному після слова Else.
Якщо замість одного оператора в рядку потрібно використовувати кілька, то використовують операторні дужки Begin ... End;
ПРИКЛАД:
при введенні числа від 1 до 7 вивести на екран назву відповідного дня тижня.
Program example;
Var a: integer;
Begin
Writeln ( 'введіть число від 1 до 7');
Read (a);
Writeln ( 'введеному числу відповідає');
Case a of
1: Writeln ( 'понеділок');
2: Writeln ( 'вівторок');
3: Writeln ( 'среда ");
4: Writeln ( 'четвер');
5: Writeln ( 'п'ятницю');
6: Writeln ( 'суботу');
7: Writeln ( 'Неділя')
Else Writeln ( 'немає такого дня тижня!')
End;
End.
При використанні оператора Case of можна вказувати діапазон допустимих значень. Наприклад, щоб визначити введена чи як символьна змінна цифра, можна написати:
При використанні цього оператора слід звернути особливу увагу на забезпечення однозначного відповідності між мітками варіанту і можливими значеннями вираження.
Кожна мітка повинна бути унікальною!
Значення виразу має збігатися з однією з міток варіанти!
Завдання для самостійної роботи:
Використовуючи оператор Case, складіть програму обчислення значення функції:
а + bx + cx ^ 2, якщо 1