25
Поняття розгалуження. Види розгалужень.

Поняття розгалуження. Види розгалужень

  • Upload
    derora

  • View
    163

  • Download
    10

Embed Size (px)

DESCRIPTION

Поняття розгалуження. Види розгалужень. Задача 1. Обчислити значення виразу ( a – b ) / ( c – d ) , де a , b , c , d – дійсні числа. Цей вираз містить дію ділення на вираз зі змінними, значення якого може дорівнювати нулю. - PowerPoint PPT Presentation

Citation preview

Page 1: Поняття розгалуження. Види розгалужень

Поняття розгалуження.Види розгалужень.

Page 2: Поняття розгалуження. Види розгалужень

Задача 1. Обчислити значення виразу (a – b) / (c – d), де a, b, c, d – дійсні числа. Цей вираз містить дію ділення на вираз зі змінними, значення якого може дорівнювати нулю. Тобто якщо значення різниці (c – d) дорівнює нулю, то значення даного виразу обчислити не можна.

Page 3: Поняття розгалуження. Види розгалужень

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

Page 4: Поняття розгалуження. Види розгалужень

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

Page 5: Поняття розгалуження. Види розгалужень

Алгоритм розв’язування задачі 1 1. Увести значення змінних a, b, c, d.

2. Обчислити х := c – d.

3. Обчислити значення логічного виразу х = 0.

4. Якщо значення логічного виразу (х = 0) true, то повідомити «Вираз значення не має: ділення на нуль», після чого виконати команду 8, якщо false – то виконати команду 5.

5. Обчислити у := a – b.

6. Обчислити z := у/х.

7. Повідомити значення змінної z.

8. Закінчити виконання алгоритму.

(стор. 74)

Page 6: Поняття розгалуження. Види розгалужень

У блок-схемі алгоритму команди перевірки умови (обчислення значення логічного виразу) позначаються блоком Рішення

Оскільки результатом виконання цих команд може бути true або false, то з цього блоку є два виходи.

Вихід Так означає, що результатом перевірки умови є true, а вихід Ні – що результатом перевірки умови є false.

блок-схема зображена - на стор. 74

Page 7: Поняття розгалуження. Види розгалужень

Виконаємо наведений алгоритм для

a = 5; b = 6; c = –3; d = 5

(стор. 75)

Команда Результат виконання

Увести значення змінних a, b, c, d

х := c – d

Обчислити значення логічноговиразу х=0

у := a – b

z := у/х

Повідомити значення змінної z

a = 5; b = 6; c = –3; d = 5

х = –3 – 5 = –8

(-8=0) = false

у = 5 – 6 = –1

z = –1/(–8) = 0,125

z = 0,125

Page 8: Поняття розгалуження. Види розгалужень

Виконаємо наведений алгоритм для

a = 12,3; b = -1; c = 8,2; d =

8,2

(стор. 75)

Команда Результат виконання

Увести значення змінних a, b, c, d

х := c – d

Перевірити умову х=0

Повідомити: «Вираз значення не має: ділення на нуль»

a = 12,3; b = –1; c = 8,2; d = 8,2

х = 8,2 – 8,2 = 0

(0=0) = true

Повідомлення: «Вираз значення не має: ділення на нуль»

Page 9: Поняття розгалуження. Види розгалужень

Характерною рисою цього алгоритму є те, що при кожному його виконанні деякі команди будуть виконуватися (причому кожна один раз), а деякі – виконуватися не будуть. Це залежить від результату виконання команди перевірки умови.

Фрагмент алгоритму від блоку Рішення до точки змикання двох переходів називається розгалуженням.

Page 10: Поняття розгалуження. Види розгалужень

В алгоритмах використовують розгалуження двох видів:

повне розгалуження і

неповне розгалуження.

Page 11: Поняття розгалуження. Види розгалужень

Блок-схема повного розгалуження

рис. 2.40 стор. 76

команда1

перевірка умови

команда2

Так ( )true Ні ( )false

Page 12: Поняття розгалуження. Види розгалужень

Виконання повного розгалуження відбувається так:

1. виконати команду перевірки умови; 2. якщо результат перевірки умови true, то

виконати послідовність команд 1, після чого перейти до виконання першої ко-манди наступного фрагмента алгоритму;

3. якщо ж результат перевірки умови false, то виконати послідовність команд 2, після чого перейти до виконання першої команди наступного фрагмента алгоритму.

стор. 76

Page 13: Поняття розгалуження. Види розгалужень

Блок-схема неповного розгалуження

рис. 2.41 стор. 76

команда

перевірка умови

Так ( )true Ні ( )false

Page 14: Поняття розгалуження. Види розгалужень

Виконання неповного розгалуження відбувається так:

1. виконати команду перевірки умови; 2. якщо результат перевірки умови true, то

виконати послідовність команд, після чого перейти до виконання першої ко-манди наступного фрагмента алгоритму;

3. якщо ж результат перевірки умови false, то нічого не виконуючи перейти до виконання першої команди наступного фрагмента алгоритму.

стор. 76

Page 15: Поняття розгалуження. Види розгалужень

Задача 2. Дано два числа. Визначити, чи рівні вони. Якщо ні, то визначити яке з них більше.

Блок-схема алгоритму розв’язування зображена на рис. 2.42 (стор. 77).

Page 16: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

x = 5; y = 5 Команда Результат виконання

Увести значення змінних x, y

Перевірити умову х=y

x = 5; y = 5;

(5=5) = true

Повідомити: «Числа рівні» Повідомлення: «Числа рівні»

Page 17: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

x = 0; y = 10 Команда Результат виконання

Увести значення змінних x, y

Перевірити умову х=y

Перевірити умову х>y

x = 0; y = 10;

(0=10) = false

Повідомити: «Друге числобільше»

Повідомлення: «Друге число більше»

(0>10) = false

Page 18: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

x = 5; y = -8 Команда Результат виконання

Увести значення змінних x, y

Перевірити умову х=y

Перевірити умову х>y

x = 5; y = -8;

(5=-8) = false

Повідомити: «Перше числобільше»

Повідомлення: «Перше число більше»

(5>-8) = true

Page 19: Поняття розгалуження. Види розгалужень

Д/з

§2.8 (стор. 73-77)

пит. 1-7 на стор. 82

Впр. 2, 4* стор. 82-83

Page 20: Поняття розгалуження. Види розгалужень

Вправа 1 стор. 82початок

Ввести a, b, c

a = 0Так Ні

Повідомити: “Вираз не має значення: ділення на нуль” z:= (a + b)-c/a

Повідомити значення змінної z

кінець

Page 21: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

a = 10; b = 5; c = 100 Команда Результат виконання

Увести значення змінних a, b, c

Перевірити умову a=0

z := (a + b) – c/a

a = 10; b = 5; c = 100

(10=0) = false

Повідомити значення змінної z z = 5

z = (10 + 5) – 100/10 = 5

Page 22: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

a = 0; b = 50; c = 10 Команда Результат виконання

Увести значення змінних a, b, c

Перевірити умову a=0

a = 0; b = 50; c = 10

(0=0) = true

Повідомити: «Вираз значення не має: ділення на нуль»

Повідомлення: «Вираз значення не має: ділення на нуль»

Page 23: Поняття розгалуження. Види розгалужень

Вправа 3 стор. 83початок

Ввести a, b

a = 0Так Ні

Так Ніb = 0

Повідомити: “x - будь-якечисло”

Повідомити: “Рівняння розв’язку не має”

x:= b/a

Повідомити значення змінної x

кінець

Page 24: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

a) a = 2; b = -8 Команда Результат виконання

Увести значення змінних a, b

Перевірити умову a=0

x := b/a

a = 2; b = -8

(2=0) = false

Повідомити значення змінної x x = -4

x = -8/2 = -4

Page 25: Поняття розгалуження. Види розгалужень

Виконаємо алгоритм для

в) a = 0; b = 12 Команда Результат виконання

Увести значення змінних a, b

Перевірити умову a=0

a = 0; b = 12

(0=0) = true

Повідомити: «Рівняння розв’язкуне має»

Повідомлення: «Рівняння розв’язку не має»

Перевірити умову b=0 (12=0) = false