Умовний оператор if
Часто при створені програми необхідно щоб певна її частина виконувалась лише при виконані умови. У таких випадках програмісту необхідно застосувати оператор перевірки умови, який має наступний формат: if < логічний вираз> then < оператор1> else < оператор2>; Якщо логічний вираз істинний (True), то виконується оператор після слова then (оператор1), якщо вираз помилковий (False), то виконується оператор після слова else (оператор2). Якщо при виконанні умови необхідно виконати більше одного оператора, то слід використовувати складений оператор. Слід звернути увагу, що перед словом else крапка з комою не ставиться. Оператор перевірки умови може мати коротку форму: if < логічний вираз> then < оператор1>; При такій формі запису умовного оператора, якщо логічний вираз істинний (True), то виконується оператор після слова then (оператор1) і дія оператора на цьому закінчується; якщо вираз помилковий (False), то управління передається на оператор, наступний за умовним. Приклад 2. Скласти програму, яка б знаходила дійсні корені квадратного рівняння a·x2+b·x+c=0. Блок-схема алгоритму розв’язку даного прикладу наведена на рис. 2.2. Текст програми Program koreni; {обчислення коренів рівняння } uses Crt; {підключення модуля управління виводом на екран дисплея} var a, b, c, d, x, x1, x2, z: real; begin clrscr; { процедура для очищення поточного вікна} writeln(' Введіть коефіцієнти квадратного рівняння '); Рис. 2.2. Блок-схема алгоритму знаходження дійсних коренів квадратного рівняння write(' a= '); readln(a); write(' b= '); readln(b); write(' c= '); readln(c); writeln('a= ', a: 5: 2, ' b= ', b: 5: 2, ' c= ', c: 5: 2); d: =sqr(b)-4*a*c; {визначення дискримінанту} if d> 0 then begin z: =2*a; x1: =(-b+sqrt(d))/z; x2: =(-b-sqrt(d))/z; writeln(' Рівняння має два корені '); writeln(' x1= ', x1: 6: 2, ' x2= ', x2: 6: 2) end; else if d=0 then begin x: =-b/(2*a); writeln(' Рівняння має один корінь '); writeln(' x=', x: 6: 2) end; else writeln(' Дійсних коренів немає '); readln; end.
|