Вказівка галуження

Вказівка галуження

Структурні оператори являють собою угрупування, побудовані з інших операторів за строго визначеними правилами. Усі структурні оператори підрозділяються на три групи:

  • складені;
  • умовні;
  • повтору.

Складений оператор являє собою групу з довільного числа операторів, відділених один від одного крапкою з комою, і обмежену операторними дужками begin і end.

Формат опису:
begin
< оператор >;
...;
< оператор >;
end;

Складений оператор сприймається, як єдине ціле, і може знаходитися в будь-якому місці програми.

Умовні оператори забезпечують виконання або невиконання деякого оператора, групи операторів або блока в залежності від заданих умов. Використовуються умовні оператори в таких алгоритмах, де можливі декілька варіантів розв'язання задачі в залежності від початкових умов. Паскаль допускає використання двох умовних операторів: if та case.

Умовний оператор (команда розгалуження) є одним із самих поширених засобів, що змінюють лінійний порядок виконання операторів програми. Він може приймати одну з наступних форм:

Перша або повна форма:
if < умова > then
begin
<серія 1>;
end
else
begin
<серія 2>;
end;

Друга або скорочена форма команди розгалуження:
if < умова > then
begin
<серія>;
end;

Мовою блок-схем вони записуються так:

У повній формі команди умовного переходу виконується <серія 1>, якщо умова істинна, і <серія 2>, якщо вона хибна. В скороченій формі - серія виконується тільки у випадку, якщо умова істинна, у протилежному випадку команда розгалуження закінчується і виконується наступний за нею оператор.

Один оператор if може входити до складу іншого. У цьому випадку говорять про вкладеність операторів. При вкладеності операторів кожне else відповідає then, що йому передує.

Умова - вираз булівського типу, тобто це речення, на яке можна відповісти "так" або "ні".

Умова може бути простою або складеною. Складені умови утворюються з простих за допомогою логічних операцій and, or, not, причому вочевидь, що службове слово or використовується, якщо необхідно виконання хоча б однієї умови, а службове слово and - якщо необхідно одночасне виконання всіх умов.

Службове слово not виконує заперечення умови, тобто, якщо вона була істиною, то стає хибною і, навпаки, якщо була хибною - стає істиною.

При написанні програм на мові Паскаль в записі умов можуть використовуватися всі можливі операції відношення (дорівнює, не дорівнює, менше, більше, не більше, не менше тощо). Результат виразу має булівський тип.

Наприклад,
((x > 4) and (x < 10))

При x = 5 ця умова буде істиною, а при x = 25 - хибною.

Задача: Знайти максимальне з двох чисел

алг Мах (ціл a,b ціл Мах)
  арг a,b
  рез Мах
поч
   Якщо a > b то Max:=a інакше Max:=b
   все
кін

uses crt;
var a,b,max : real;
begin
clrscr;
write(‘a=’);
readln(a);
write(‘b=’);
readln(b);
if a > b then max:=a else max:=b;
writeln(‘Max=’,max);
readln;
end.