- •Лекція 5,6
- •1. Програми з розгалудженнями.
- •1.1 Оператор умовного переходу if.
- •Оператор умови if
- •1.2 Оператор безумовного переходу Goto.
- •Var a, b, V : real;
- •1.3 Оператор вибору case.
- •2. Арифметичні вирази і операції
- •4. Логічні вирази і операції
- •3. Вирази і операції відношення
- •5. Опис алгоритмів із розгалуженням мовою програмування.
- •Var a, b, V : real;
- •Var X,y:real;
- •Var X,y:real;
Var a, b, V : real;
begin
write(‘A=’);
readln(A);
write(‘B=’);
readln(B);
if A>B then
begin
V:=A-B;
Goto M1;
end;
V:=A+B;
M1: writeln (‘Відповідь:’V);
end.
1.3 Оператор вибору case.
Цей оператор є узагальненням оператора if і дозволяє зробити вибір із довільного числа наявних варіантів. Він складається з виразу, що називається селектором, і списку параметрів, кожному з яких передує список констант вибору (список може складатися і з однієї константи). Як і в операторі if, тут може бути присутнім слово else, що має той же зміст.
Формат опису:
case < вираз-селектор > of
< список 1 > : < оператор 1 >;
< список 2 > : < оператор 2 >;
...
< список n > : < оператор n >;
else < оператор >
end;
Оператор case працює наступним способом. Спочатку обчислюється значення виразу-селектора, потім забезпечується реалізація того оператора, константа вибору якого дорівнює поточному значенню селектора. Якщо жодна з констант не дорівнює поточному значенню селектора, виконується оператор, що знаходиться за словом else. Якщо слово else відсутнє, активізується оператор, що знаходиться за словом end, тобто перший оператор за межею дії case. Селектор повинен відноситися до одного з цілих типів, булевського або літерного типу. Дійсні та рядкові типи використовувати в якості селектора заборонено. Список констант вибору складається з довільної кількості значень або діапазонів, відділених один від одного комами. Межі діапазону записуються двома константами через складений символ діапазону “..“. Тип констант у будь-якому випадку повинен збігатися з типом селектора.
Приклад 2:
Скласти програму, яка визначає пору року за порядковим номером місяця.
Program PORA;
var MONTH : integer;
begin
Write(‘Введіть порядковий номер місяця:’);
readln (MONTH);
if (MONTH<1) or (month>12)
then writeln (‘Такого місяця немає’)
else
case MONTH of
3,4,5 : writeln (‘Весна’);
6,7,8 : writeln (‘Літо’) ;
9,10,11 : writeln (‘Осінь’);
12,1,2: writeln (‘Зима’)
end;
end.
2. Арифметичні вирази і операції
Арифметичні операції виконують арифметичні дії у виразах над значеннями операндів цілочисельних і речовинних типів. Арифметичні операції мови Паскаль представлені в табл. 1
Таблиця 1. Арифметичні операції
операція |
Дія |
Типи операндів |
Тип результату |
Бінарні |
|
|
|
+ |
Складання |
Цілий Речовинний |
Цілий Речовинний |
- |
Віднімання |
Цілий Речовинний |
Цілий Речовинний |
* |
Множення |
Цілий Речовинний |
Цілий Речовинний |
/ |
Ділення |
Цілий Речовинний |
Цілий Речовинний |
div |
Цілочисельне ділення |
Цілий |
Цілий |
mod |
Залишок |
Цілий |
Цілий |
and |
Арифметичне І |
Цілий |
Цілий |
shl |
Зсув вліво |
цілий |
Цілий |
shr |
Зсув управо |
Цілий |
Цілий |
or . |
Арифметичне АБО |
Цілий |
Цілий |
хor |
Виключення диз'юнкції |
Цілий |
Цілий |
Унарні |
|
|
|
+ |
збереження знака |
Цілий Речовинний |
Цілий Речовинний |
- |
заперечення знака |
Цілий Речовинний |
Цілий Речовинний |
not |
Арифметичне заперечення |
Цілий |
Цілий |
