You are on page 1of 23

Величини в

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

7
За навчальною програмою 2017 року

Урок 21 teach-inf.at.ua
Величини в алгоритмах з
Розділ 4
розгалуженням
7
§ 4.3

1. Який фрагмент алгоритму називається повним


розгалуженням? Як він виконується? Наведіть
приклади.
2. Який фрагмент алгоритму називається неповним
розгалуженням? Як він виконується? Наведіть
приклади.
3. Яка команда є в кожному
розгалуженні? Якими
можуть бути результати її
виконання?

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

У пункті 4.1 ви складали алгоритми і проекти для


обчислення значення виразу, що містить дії:

 додавання

 віднімання

 множення

Значення таких виразів можна обчислити при будь-


яких значеннях змінних, що входять до цих виразів.
© Вивчаємо інформатику teach-inf.at.ua
Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Розглянемо тепер задачу на обчислення значення


виразу, що містить дію ділення.
Задача 1. Обчислити значення виразу
(2*х + у) / (2*х-у),
де

хіу довільні числа


символом / в інформатиці позначають дію ділення

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Створимо математичну модель для розв'язування цієї


задачі.
Ви вже знаєте, що дію
ділення можна виконати не
завжди. Тому і значення
цього виразу можна
обчислити не при будь-яких
значеннях змінних х та у.
Адже цей вираз містить дію
ділення на вираз зі
змінними, значення якого
може дорівнювати нулю.
© Вивчаємо інформатику teach-inf.at.ua
Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Тобто якщо значення дільника,

2*х - у дорівнює нулю 2*х - у не дорівнює

то значення виразу то значення виразу


(2*х + у) / (2*х- у) (2*х + у) / (2*х- у)
обчислити не можна обчислити можна
якщо х = 1 і у = 2, то якщо, х = 3 і у = 4, то
значення цього виразу значення цього виразу
обчислити не можна обчислити можна.

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Це означає, що залежно від значення виразу:


2*х - у
в алгоритмі виконуватимуться різні команди:

якщо 2*х- у = 0 якщо 2*х - у ≠ 0

то повинна виконуватися
то повинні виконуватися
команда виведення
команди для обчислення
повідомлення, що значення
значення виразу
виразу обчислити не можна

Тобто цей алгоритм має містити повне розгалуження


© Вивчаємо інформатику teach-inf.at.ua
Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Блок-схему
алгоритму
розв’язування цієї
задачі подано на
малюнку.

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

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

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

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

Приклад 1
Увести значення змінних х та у х = 5; у = 6

а := 2*х - у а = 2*5 - 6 = 4

а = 0? Ні

Ь :=2*х + у Ь = 2*5 + 6= 16

с := Ь/а с = 16/4 = 4

Повідомити значення змінної с Повідомлення: с = 4


© Вивчаємо інформатику teach-inf.at.ua
Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

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

Приклад 2
Увести значення змінних х та у х = 5; у= 10

а := 2*х - у а = 2*5-10 = 0

а = 0? Так

Повідомити: «Обчислити не Повідомлення: «Обчислити не


можна: ділення на 0» можна: ділення на 0»

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Відповідно до алгоритму розв’язування цієї задачі,


складаючи проєкт у середовищі розробки та виконання
проектів, потрібно створити 5 змінних:

х у а b c
І змінним х та у надати значення, для
яких потрібно обчислити значення
виразу.

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Потім слід обчислити значення дільника 2*х - у,


запам’ятати його (змінна а) і порівняти це значення з
нулем:

Якщо це значення дорівнює Інакше: тобто якщо це


нулю значення не дорівнює нулю

то вивести повідомлення, що то потрібно обчислити


обчислити значення виразу значення діленого 2*х + у і
не можна запам'ятати його (змінна b)
Потім поділити ділене на дільник, запам’ятати
результат (змінна с) і повідомити значення цієї змінної.
© Вивчаємо інформатику teach-inf.at.ua
Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Розглянемо проект розв’язування Задачі 1 у Python.


Повне розгалуження мовою Python має вигляд:
if команда_перевірка_умови:
послідовність команд 1
else:
послідовність команд 2
Пропуск 4
символи
(англ. if – якщо, else – інакше).

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Звертаємо вашу увагу, що послідовності


команд 1 та 2 записано з відступом праворуч від
лівої межі вікна.
Ці відступи в Python
визначають блоки
команд, які
виконуються залежно
від результату
виконання команди
перевірки умови.

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Як ви вже знаєте, відступи створюються автоматично


під час натискання клавіші Enter після символа «:» або
їх можна ставити самостійно, натиснувши клавішу Tab.
Запис команд, які виконуються за межами блока,
повинен починатися ближче до лівої межі вікна. Для
зменшення відступу від лівої межі можна скористатися
клавішею Backspace.

Backspace

© Вивчаємо інформатику teach-inf.at.ua


Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

У команді перевірки умови в Python можна


використовувати оператори порівняння:
> більше
< менше
>= більше або дорівнює
<= менше або дорівнює
дорівнює, записують два символи « = » без
==
пропуску
!= не дорівнює
© Вивчаємо інформатику teach-inf.at.ua
Обчислення значення виразу,
Розділ 4
що містить дію ділення
7
§ 4.3

Вигляд проекту обчислення значення виразу


(2*х + у) / (2*х - у) наведено нижче.
х = float(input("Уведіть значення х: "))
у = float(input("Уведіть значення у: "))
а = 2 *х-у
if а == 0:
print("Обчислити не можна: ділення на нуль")
else:
b = 2*х + у
с=b/а
print("Результат обчислення =", с)
© Вивчаємо інформатику teach-inf.at.ua
Розділ 4
Розгадайте ребус
7
§ 4.3

Ш=Ж Н=НН
Розгалуження
© Вивчаємо інформатику teach-inf.at.ua «Ребуси українською» © rebus1.com
Розділ 4
Дайте відповіді на запитання
7
§ 4.3

1. Чим відрізняється лінійний фрагмент алгоритму від


розгалуження?
2. Чим відрізняється алгоритм для обчислення значення
виразу (2*х+у)/(2*х-у) від алгоритму для обчислення
значення виразу (2*х*у)*(2*х - у)?
3. При яких значеннях змінних результатом
виконання алгоритму обчислення значення
виразу (4*х-у)/(х+2*у) буде повідомлення:
«Обчислити неможливо»? Наведіть кілька
прикладів.

© Вивчаємо інформатику teach-inf.at.ua


Розділ 4
Домашнє завдання
7
§ 4.3

Проаналізувати
§ 4.3, ст. 142-145

© Вивчаємо інформатику teach-inf.at.ua


Розділ 4
Працюємо за комп’ютером
7
§ 4.3

Сторінка
148-150

© Вивчаємо інформатику teach-inf.at.ua


Дякую за увагу!

7
За навчальною програмою 2017 року

Урок 21 teach-inf.at.ua

You might also like