що в якості оператора, який виконується за виконання чи невиконання умови, може виступати умовний же оператор. У цьому випадку говорять про вкладеності умовних операторів. Я настійно рекомендую при вирішенні такого роду завдань складати блок-схему алгоритму в зошиті. Тільки потім, при складанні програми, вам залишається лише акуратно прописувати спочатку всю Then-частина, а потім переходити до Else-частини. Зазвичай при записі умовних операторів на мові Паскаль (особливо при множинних розгалуження) команди записують уступом вправо і вниз. Це підвищує наочність, і, повірте, знижує втрати часу на налагодження.
Для ілюстрації вирішимо ще одне завдання: "вирішити рівняння виду A * x ^ 2 + B * x + C = 0 ". Прошу не плутати з квадратним рівнянням, для якого нам було відомо, що коефіцієнт А не дорівнює нулю. Тут же коефіцієнти можуть бути будь-якими числами. Виходячи з елементарних математичних міркувань, отримуємо наступний алгоритм:
Program Sq2;
Var A, B, C, D, X, X1, X2: Real;
Begin
Writeln ('Введіть коефіцієнти рівняння (A, B, C)');
If A = 0 Then
If B = 0 Then
If C = 0 Then Writeln ('X - будь-яке число')
Else Writeln ('Корній немає!') p> Else Begin X: =-C/B; Writeln ('X =', X: 8:3) End
Else
Begin
D: = B * B-4 * A * C;
If D <0 Then Writeln ('Корній немає!') p> Else
Begin
X1: = (-B + SQRT (D))/2/A;
X2: = (-B-SQRT (D))/2/A;
Writeln ('X1 =', X1: 8:3, 'X2 =', X2: 8:3)
End
End
End. br/>
Вибір варіантів
Існують умови, які мають багато варіантів, в залежності від яких необхідно виконати ту чи іншу дію, наприклад: при введенні місяця необхідно вивести сезон, якому відповідає даний місяць. У паскале є спеціальний оператор вибору case, який оформляється наступним чином:
case mesiac of
'грудня', 'Січень', 'Лютий': writeln ('Зима');
'Март', 'Апрель', 'травня': writeln ('Весна');
'червня', 'липня', 'серпня': writeln ('Літо');
'вересня', 'Жовтень', 'листопада': writeln ('Осінь');
else wrteln ('Такого місяці не існує!');
end;
Де в операторі перераховуються всі варіанти для яких виконуються ті чи інші дії, оператор else виконує дії якщо операнд має значення, яке не перераховане в case.
Складні умови (зв'язки)
Розповідне пропозиція, про яку можна сказати вірно воно чи ні називають висловлюванням. Наприклад:
Сьогодні Вівторок. p> Йде дощ. p> Небо може бути блакитним або сірим. p> Число може бути парним. p> Завтра буде не середовище. br/>
Висловлювання можуть об'єднуватися за допомогою слів (операцій) І, Або, НЕ. Ці операції називають логічними операціями. Об'єднані висловлювання називають зв'язками. Наприклад:
Сьогодні Вівторок і йде дощ. p> Число може бути парних або непарних. p> Завтра буде НЕ вівторок. br/>
Логічну операцію І (AND) позначають ^, операцію АБО (OR) V, заперечення НЕ (NOT) ---.
Вірність чи невірність зв'язки двох висловлювань (істинність) визначають за правилами істинності.
В В
Наприклад: Визначити істинно або хибно наступний вислів:
not ((4> 8) and (5 <7))
4> 8
хибно
5 <7
істинно
(4> 8) and (5 <7)
хибно
not ((4> 8) and (5 <7))
істинно
Отже висловлювання істинно.
ОРГАНІЗАЦІЯ Розгалужень у ПРОГРАМАХ НА Паскаль. ОПЕРАТОР IF THEN ... ELSE
Формат оператора:
IF умова THEN оператор 1 ELSE оператор 2;
Правило роботи:
1. Перевіряється умова. p> 2. Якщо умова істинно, то виконується оператор1
3. Якщо умова помилково, то виконується оператор2.
Припустимо скорочений формат запису оператора:
IF умова THEN оператор 1;
Правило роботи:
1. Перевіряється умова. p> 2. Якщо умова істинно, то виконується оператор1.
3. Якщо умова помилково, то виконується оператор наступний після IF.
Під умовою розуміється логічне (булевское) вираз.
ЛОГІЧНЕ ВИРАЗ - це вираз, який приймає значення TRUE (істина) або FALSE (неправда), і включає в себе арифметичні вирази, пов'язані операціями відносини і логічними операціями.
ОПЕРАЦІЇ ВІДНОСИНИ:
> більше
> = більше або дорівнює
<менше
<= менше або дорівнює
= дорівнює
<> нерівно