11 клас (академ). Поняття розгалуження. Види розгалужень. Запис алгоритмів з розгалуженням. - 11 клас (академічний) - Інформатика - Каталог статей - Кабінет інформатики Черкаської СПШ №20
Кабінет 208
Головна | Реєстрація | Вхід
П`ятниця, 09.12.2016, 21:18
Меню сайту
Форма входу

Категорії розділу
5 клас [11]
6 клас [24]
7 клас [16]
8 клас [15]
9 клас [25]
10 клас (стардарт) [17]
10 клас (академічний) [23]
11 клас (стандарт) [21]
11 клас (академічний) [33]
Головна » Статті » Інформатика » 11 клас (академічний)

11 клас (академ). Поняття розгалуження. Види розгалужень. Запис алгоритмів з розгалуженням.
Поняття розгалуження. Види розгалужень. Запис алгоритмів з розгалуженням.



    У попередніх пунктах було розглянуто кілька лінійних алгоритмів, зокрема, алгоритми для розв’язування задач на обчислення значень арифметичного виразу для виконавця, який вміє виконувати арифметичні операції.
Розглянемо приклад задачі, алгоритм розв’язування якої – не є лінійним.

    Задача 1. Обчислити значення виразу (a – b) / (c – d), де a, b, c, d – дійсні числа.
Адже цей вираз містить дію ділення на вираз зі змінними, значення якого може дорівнювати нулю. Тобто якщо значення різниці c – d дорівнює нулю, то значення даного виразу обчислити не можна. Це означає, що система команд виконавця повинна містити команду порівняння двох чисел, наприклад таку: «s=t?», де s і t – або числа, або змінні чи вирази, які мають певні числові значення. Така команда є прикладом команди перевірки умови. Результатом виконання команди перевірки умови може бути або істина (умова виконується), або хиба (умова не виконується).

    Ми вже знаємо, що порівняння можна розглядати як висловлення (логічний вираз), який набуватиме значення true або false залежно від конкретних значень змінних s і t. І тоді команда перевірки умови є командою обчислення значення логічного виразу.

   Алгоритм розв’язування задачі 1 зображено на стор. 74.

Команди 1–3  алгоритму виконуватимуться при будь-якому наборі значень змінних a, b, c, d.
Подальше виконання  цього алгоритму залежатиме від значення логічного виразу, обчисленого в команді 3.
Якщо це значення true, то виконуватимуться команди 5–8, а якщо false, то виконуватимуться команда виведення повідомлення «Вираз значення не має: ділення на нуль» і перехід до команди 8.   

У блок-схемі алгоритму команди перевірки умови або обчислення значення логічного виразу позначаються блоком Рішення.
Оскільки результатом виконання цих команд може бути або true або false, то з цього блоку є два виходи.
Вихід Так означає, що результатом перевірки умови є true, а вихід Ні – що результатом перевірки умови є false.

Блок-схему алгоритму розв’язування задачі 1 зображено на рис. 2.69 стор. 74.

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

   В алгоритмах використовують розгалуження двох видів: повне розгалуження (рис. 2.40 стор. 76) і неповне розгалуження (рис. 2.41 стор. 76).

   Виконання повного розгалуження відбувається так:
  • виконати команду перевірки умови (команду обчислення значення логічного виразу);
  • якщо результат перевірки умови true, то виконати послідовність команд 1, після чого перейти до виконання першої команди наступного фрагмента алгоритму;
  • якщо ж результат перевірки умови false, то виконати  послідовність команд 2, після чого також перейти до виконання першої команди наступного фрагмента алгоритму.
Виконання неповного розгалуження відрізняється від виконання повного розгалуження тим, що при результаті виконання команди перевірки умови false, виконавець одразу повинен перейти до виконання першої команди наступного фрагмента алгоритму.
 
Усередині розгалуження можуть знаходитися як лінійні фрагменти алгоритму, так і інші розгалуження.

   Задача 2. Дано два числа. Визначити, чи рівні вони. Якщо ні, то яке з них більше.
Блок-схема алгоритму розв’язування цієї задачі зображена на рис. 2.42 (стор. 77). 

Домашнє завдання
    §2.8 (стор. 73-77) пит. 1-7 стор. 82   
    Впр. 2, 4* на стор. 82-83


Категорія: 11 клас (академічний) | Додав: admin (13.10.2013)
Переглядів: 2095
Пошук
Статистика

Онлайн всього: 2
Гостей: 2
Користувачів: 0
Copyright MyCorp © 2016
Безкоштовний хостинг uCoz