Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Програми з розгалуженням

Команди галуження — це складові командами, у яких на відміну від простих команд присутні умови, в залежності від істинності яких виконуються або не виконуються оператори, що входять до складу команди розгалуження.


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


1. Конструкція «If — Then» — неповне галуження використовується в тому випадку, коли визначені дії тільки у разі виконання умови.


IF <умова> THEN <оператор>;


Конструкція «If — Then — Else» — пов­не галуження використовується в тому випадку, коли визначені різні дії в разі виконання та невиконання умови.


IF <умова> THEN <оператор> ELSE <опе­ратор>;


2. Конструкції «Case — Of» неповний вибір або «Case — Of — Else» — повний вибір використовуються в тому випадку, коли визначені різні дії в разі декількох виходів (замінюють конструкції із вкладених операторів if).


CASE <порядкова змінна> OF
<значення>: <оператори>
ELSE <оператор>;
END.


Прості та складені умови. Висловлювання, яке може бути істинним (правильним) або хибним (неправильним) називається умовою.

 

Проста умова — це висловлювання, в якому два вирази з’єднані знаком операції відношення.

 

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


У мові програмування Паскаль реалізовані операції відношеня: > — «більше»; < — «менше»; = — «дорівнює»; <> — «не дорівнює»; >= — «не менше»; <= — «не більше»; та логічні операції: not — «ні»; and — «і»; or — «або».


Висловлювання — це деяке твердження, ві­­­д­­­­­­­­н­ос­но якого можна сказати, що воно або істинне, або хибне. Таким чином, кожному висловлюванню можна приписати «0» (хибне) або «1» (істинне). Приклад: «5 — просте число» — істинне, «2 = 3 + 5» — хибне висловлювання.


За допомогою логічних операцій можна будувати з одного висловлювання інші. Побудова з даного (даних) висловлювання нового висловлювання називається логічною операцією. Знаки логічних операцій називають логічними зв’язками. Логічні операції частіше за все описуються за допомогою таб­лиць істинності.


Таблиці істинності для операцій «інверсії» (заперечення), «кон’юнкції» (логічне множення, або логічне «і»), диз’юнкції (логічне додавання, або логічне «або»).

 

А

B

A and B («і»)

A or B («або»)

not A («ні»)


Логічні вирази — це вирази, що складаються з висловлювань, які можуть бути з’єднані логічними зв’язками. Ці вирази набувають логічного значення («хибне» або «істинне»). Логічні вирази можуть бути простими та складеними.

 

У простому логічному виразі використовуються змінні та константи логічного типу, операції порівняння. Зв’язка простих логічних виразів за допомогою логічних операцій утворює складений логічний вираз. Прості вирази записуються в складених виразах у круг­лих дужках.

 

В умовному виразі задається умова розгалуження. При виконанні оператора IF цей вираз обчислюється з отриманням логічного результату. Якщо результат True, то виконується простий або складний оператор після слова Then. Якщо результат False, то виконується оператор після Else.

Наприклад:

If A<7.2 then Y:=5*A else Y:=5/A;

Частину оператора Else … можна не вживати:

If X>0 then K:=K+1;

Це означає, що у випадку, коли число Х більше нуля, буде виконано оператор K:=K+1. Якщо така умова для конкретного числа хибна, то змінення К не відбувається, а управління передається на оператор, який в програмі записано після оператора If.

Складений оператор Begin…End суттєво розширює можливості If:

If A<0 then begin

K:=K+1;

R:=a;

End

Else begin

L:=L+1;

Q:=A;

End;

У складному операторі записують будь-яку кількість операторів. Вони виконуються “як одне ціле”. Тут можуть бути “свої” If, цикли, тощо.

Після оператора, який стоїть перед Else, не ставиться крапка з комою.

Оператор Case забезпечує розгалуження на декілька напрямків.

Загальний вигляд:

Case індекс вибору of список вибору;

Else…; End;

де індекс вибору – проста змінна цілого, символічного, перелічуваного або логічного типу;

список вибору – сукупність простих або складних операторів, перед кожним з яких стоїть константа вибору, тип якої співпадає з типом індексу вибору.

Після слова Else може стояти простий або складний оператор (ця конструкція може бути відсутня).

Приклад:

Case Kit of

1: Y:=sin(x);

2: Y:=cos(x);

3: Y:=sin(x)+cos(x);

Else Y:=0;

End; {case}

Змінна Kit (цілого типу) повинна бути визначеною до виконання оператора Case. Якщо Kit дорівнює 1, обчислюється функція Y:=sin(x), якщо вона дорівнює 2, то: Y:=cos(x). У тому випадку, коли Kit відрізняється від 1, 2 або 3, буде виконано оператор Y:=0.

У списку вибору можна вживати складний оператор Вegin… End.

Приклад: скласти програму обчислення функції

Програма:

Var X, Y, Z, F: Real;

Begin

Write(‘Введіть Y, Z:’);

ReadLn(Y,Z);

Write(‘Введіть X:’);

ReadLn(X);

IF (X>=Y) THEN F:=SQR(X)+EXP(Z)/COS(Y)

ELSE F:=SIN(X)+COS(Z);

WriteLn(‘Значення F=’,F);

End.

<== предыдущая лекция | следующая лекция ==>
Лінійні програми | Контрольні запитання
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 498; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.