1. 02/04/16 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 1
Оператор розгалуження
Для учнів 4-х класів гімназії
2. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
2
Загальний вигляд оператора
Занотуйте!
if <логічний вираз> then <серія команд 1> else <серія команд 2>;
Наприклад:
if 27 mod 2=0 then write (‘$’) else write (‘!’);
Якщо <логічний вираз> істиний, то виконуються <серія
команд 1>; якщо <логічний вираз> хибний, то
виконуються <серія команд 2>.
Наприклад, 27 mod 2=0 –хибний логічний вираз, тому
комп’ютер надрукує !
3. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
3
Ще приклади
В результаті виконання наступного оператора
if 25 mod 2<>0 then writeln (‘@’) else writeln (‘$’);
комп'ютер надрукує @, бо логічний вираз 25 mod
2<>0 є істиний.
А в результаті виконання такого оператора
if -7>0 then a:=222 else a:=333;
комп'ютер в комірку а покладе число 333, бо
логічний вираз -7>0 є хибний.
Зясуйте самі, яка буде дія комп’ютера при
виконанні команд:
If (7>3)or(-7>3) then x:=3 else x:=7;
if (15 mod10=0)and(25 mod10<>0) then write(0)
else write (5);
4. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
4
Скорочена форма оператора
розгалуження
if <логічний вираз> then <команди> ;
Якщо <логічний вираз> істиний, то виконуються
<команди>; якщо <логічний вираз> хибний, то
виконуються оператори, що слідують за
оператором розгалуження.
5. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
5
Наприклад
В результаті виконання наступного оператора
if 25 mod 2<>0 then writeln (‘@’);
writeln (‘Pryvit!’);
комп'ютер надрукує @ та Pryvit! бо логічний вираз
25 mod 2<>0 є істиний.
А в результаті виконання такого оператора
if -7>0 then a:=222;
writeln (‘Pryvit!’);
комп'ютер просто надрукує Pryvit!, а в комірці а
нічого не з'явиться, бо логічний вираз -7>0 є
хибний.
6. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
6
Обчислити значення виразу
y=(5+x)/(7-х) при будь-якому дійсному х
Здавалося б, ми уже писали подібні програми і
обходились при цьому без оператора if… З уроків
математики ви знаєте, що на нуль ділити не
можна, тому у випадку, якщо користувач введе в
комірку х число 7, то ваша програма не буде
працювати. Тому у програмі ми (користувачі)
повинні передбачити імовірність ділення на нуль!
7. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
7
Обчислити значення виразу
y=(5+x)/(7-х) при будь-якому дійсному х
program Vyraz_1;
var x: real;
begin write (‘vvedit x’); readln (x); {вводимо х}
if 7-x<>0 then writeln(‘y=‘, (5+x)/(7-x):3:1)
else writeln (‘rozvjazkiv nemae’); {якщо х
задовольняє область визначення, то обчислюємо
значення виразу, інакше виводимо повідомлення,
що розв'язків немає}
еnd.
8. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
8
З двох довільних чисел надрукувати
більше
1. Ввести два довільні числа (a,b), не
рівні між собою.
2. Якщо перше більше від другого
(a>b), то надрукувати це число (a),
інакше надрукувати друге число (b).
А тепер напишемо програму (cамостійно).
9. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
9
Домашнє завдання
1. Обчислити значення виразу
S=sqrt(sqr(x)-16) для довільного
дійсного значення х.
2. Ввести довільне ціле число і
видрукувати відповідні повідомлення
про парність чи непарність цього
числа.
10. 02/04/16
Для учнів 4-х класів гімназії. Дмитрук О.Ю.
9
Домашнє завдання
1. Обчислити значення виразу
S=sqrt(sqr(x)-16) для довільного
дійсного значення х.
2. Ввести довільне ціле число і
видрукувати відповідні повідомлення
про парність чи непарність цього
числа.