Каротка: аператар галінавання дазваляе праграме выбраць адно з дзеянняў у залежнасці ад умовы. У мове Pascal ён запісваецца з дапамогай if ... then ... else.
Доклад «Аператар галінавання»
1. Што такое галінаванне
У рэальным жыцці мы часта прымаем рашэнні:
- калі ідзе дождж, трэба ўзяць парасон;
- калі лік дадатны, вывесці паведамленне;
- інакш паведаміць, што лік недадатны.
У праграме такія рашэнні рэалізуюцца з дапамогай аператара галінавання.
Галінаванне — гэта выбар аднаго з магчымых шляхоў выканання праграмы.
2. Умова
Спачатку правяраецца ўмова. Яна можа быць праўдзівай або непраўдзівай.
У Pascal выкарыстоўваюцца аператары параўнання:
| Аператар | Значэнне |
|---|---|
= |
роўна |
<> |
не роўна |
< |
менш |
> |
больш |
<= |
менш або роўна |
>= |
больш або роўна |
Напрыклад:
x > 0
Гэта ўмова правярае, ці з’яўляецца x дадатным.
3. Няпоўнае галінаванне
Няпоўнае галінаванне выкарыстоўваецца, калі дзеянне трэба выканаць толькі пры праўдзівай умове.
Схема:
if умова then
аператар;
Прыклад:
if x > 0 then
writeln('Лік дадатны');
Калі x > 0, паведамленне будзе выведзена. Калі ўмова непраўдзівая, праграма пяройдзе да наступнай каманды.
4. Поўнае галінаванне
Поўнае галінаванне выкарыстоўваецца, калі трэба прадугледзець два варыянты дзеянняў.
Схема:
if умова then
аператар1
else
аператар2;
Прыклад:
if x >= 0 then
writeln('Лік недадатны')
else
writeln('Лік адмоўны');
Калі ўмова x >= 0 праўдзівая, выконваецца першая каманда. У адваротным выпадку выконваецца каманда пасля else.
5. Некалькі каманд у галіне
Калі ў адной галіне трэба выканаць некалькі каманд, іх аб’ядноўваюць паміж begin і end.
if x > 0 then
begin
writeln('Лік дадатны');
writeln('Гэта першая галіна');
end
else
begin
writeln('Лік недадатны');
writeln('Гэта другая галіна');
end;
Важна: перад else кропка з коскай не ставіцца.
Няправільна:
if x > 0 then
writeln('Дадатны');
else
writeln('Недадатны');
Правільна:
if x > 0 then
writeln('Дадатны')
else
writeln('Недадатны');
6. Прыклад праграмы
Праграма правярае, ці з’яўляецца лік цотным:
var
n: integer;
begin
readln(n);
if n mod 2 = 0 then
writeln('Лік цотны')
else
writeln('Лік няцотны');
end.
Аператар mod знаходзіць астачу ад дзялення. Калі астача ад дзялення на 2 роўная нулю, лік цотны.
7. Складаныя ўмовы
Умовы можна аб’ядноўваць з дапамогай лагічных аператараў:
and— і;or— або;not— не.
Прыклад:
if (x > 0) and (x < 10) then
writeln('Лік знаходзіцца ад 1 да 9');
Вынік
Аператар галінавання патрэбны для таго, каб праграма магла прымаць рашэнні. Спачатку правяраецца ўмова, а потым выконваецца адпаведная галіна. Каб рашаць падобныя заданні, трэба:
- Вызначыць умову.
- Запісаць яе з дапамогай аператараў параўнання.
- Пазначыць дзеянне пры праўдзівай умове.
- Пры неабходнасці дадаць галіну
else. - Праверыць праграму на розных значэннях.
