Оператор розгалуження

9
03/02/22 Для учнів 4-х класів гімназії. Дмит рук О.Ю. 1 Оператор розгалуження Для учнів 4-х класів гімназії

Transcript of Оператор розгалуження

Page 1: Оператор розгалуження

05/01/23 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 1

Оператор розгалуження

Для учнів 4-х класів гімназії

Page 2: Оператор розгалуження

05/01/23 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 2

Загальний вигляд оператора

Занотуйте!if <логічний вираз> then <серія команд 1> else <серія команд 2>;Наприклад:if 27 mod 2=0 then write (‘$’) else write (‘!’);

Якщо <логічний вираз> істиний, то виконуються <серія команд 1>; якщо <логічний вираз> хибний, то виконуються <серія команд 2>.Наприклад, 27 mod 2=0 –хибний логічний вираз, тому комп’ютер надрукує !

Page 3: Оператор розгалуження

05/01/23 Для учнів 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);

Page 4: Оператор розгалуження

05/01/23 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 4

Скорочена форма оператора розгалуження

if <логічний вираз> then <команди> ;

Якщо <логічний вираз> істиний, то виконуються <команди>; якщо <логічний вираз> хибний, то виконуються оператори, що слідують за оператором розгалуження.

Page 5: Оператор розгалуження

05/01/23 Для учнів 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 є хибний.

Page 6: Оператор розгалуження

05/01/23 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 6

 Обчислити значення виразу y=(5+x)/(7-х)   при будь-якому дійсному х

Здавалося б, ми уже писали подібні програми і обходились при цьому без оператора if… З уроків математики ви знаєте, що на нуль ділити не можна, тому у випадку, якщо користувач введе в комірку х число 7, то ваша програма не буде працювати. Тому у програмі ми (користувачі) повинні передбачити імовірність ділення на нуль!

Page 7: Оператор розгалуження

05/01/23 Для учнів 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.

Page 8: Оператор розгалуження

05/01/23 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 8

З двох довільних чисел надрукувати більше

1. Ввести два довільні числа (a,b), не рівні між собою.

2. Якщо перше більше від другого (a>b), то надрукувати це число (a), інакше надрукувати друге число (b).

А тепер напишемо програму (cамостійно).

Page 9: Оператор розгалуження

05/01/23 Для учнів 4-х класів гімназії. Дмитрук О.Ю. 9

Домашнє завдання

1. Обчислити значення виразу S=sqrt(sqr(x)-16) для довільного дійсного значення х.

2. Ввести довільне ціле число і видрукувати відповідні повідомлення про парність чи непарність цього числа.