- •Лекція №3
- •План лекції
- •Структура програми
- •Заголовок програми
- •Розділ вказівки використовуваних модулів (Речення uses)
- •Розділ описів
- •Описи міток (позначок)
- •Опис констант
- •Прості константи
- •Типізовані константи
- •Типізовані константи структурованих типів
- •Опис типів
- •Опис змінних
- •Опис експорту
- •Розділ операторів (операторний блок)
- •Стандартні процедури введення (Read, ReadLn) і виведення (Write, WriteLn)
- •Формати виведення.
- •Зверніть увагу на наявність пропусків перед символами b і d: ‘ b‘ і ‘ d’. Ці пропуски не допускають злиття зображень даних на екрані. Оператори мови Pascal
- •Оператор присвоєння
- •Оператор процедури
- •Оператор переходу
- •Порожній оператор
- •Структурні оператори
- •Складений оператор
- •Умовні оператори
- •Умовний оператор if
- •Оператор вибору (варіанта)
Оператор вибору (варіанта)
Розглянутий умовний оператор if дозволяє вибирати тільки одне з двох можливих дій залежно від логічного виразу.
О ператор вибору case є узагальненням оператора if - він дає і можливість виконати одне з декількох дій залежно від значення перемикача.
З агальну структуру оператора вибору в повній формі можна представити в такий спосіб:
case Перемикач of Список констант1: Оператор1; Список констант2: Оператор2; Список константN: ОператорN else ОператорЕ end |
У неповній формі оператора case альтернативна всім попереднім варіантам вибору вітка else відсутня. У цьому випадку, якщо значення Перемикача не збігається з жодним зі значень констант вибору, не виконується жоден з Операторів, описаних в case, і керування передається операторові, що стоїть безпосередньо після ключового слова end, що замикає оператор case.
Приклади, що демонструють найбільш характерні способи використання оператора case.
Завдання 3
var Arrow : Char;
Position: record
X,Y : Word
end;
begin
with Position d
case Arrow of
#72 : Y:=Y-1;
#80 : Y:=Y+1;
#75 : X:=X-1;
#77 : X:=X+1
end
end.
Завдання 4 var Symbol : Char;
begin
case Symbol of
’0’..’9’ :writeln (‘Це цифра’);
’a'..’z : writeln ( Це мала літера');
'A'..'Z' : writeln ('Це прописна буква');
#10,#13,#26: writeln ('Це керуючий символ’)
else writeln ('Це інший символ’)
end
Завдання 5 Написати програму, що визначає по номері місяця кількість днів у ньому.
program Z4;
var Numer:Byte; B:Char;
begin
Write('уведіть номер місяця =>');
Readln(Number);
Write('У цьому місяці ');
case Number of
1,3,5,7,8,10,12 : Writeln('31 день ');
4,6,9,11 : Writeln('30 днів ');
2 : begin
Writeln;
Write(' Рік високосний ? Д/Н => ');
Readln(B);
case B of
'Д' : Writeln('29 днів');
'Н' : Writeln('28 днів');
else : Writeln('28 або 29 днів');
end;
end;
else Writeln('номер місяця уведений невірно');
end;
end.