G-X3X01SGQDG

§ 19. Способи опису алгоритму. Алгоритмічні структури


Життя людей тісно пов’язане з виконанням певних алгоритмів. Давайте поміркуємо, які алгоритми існують у вашому житті. У який спосіб вони подаються? Чи доводилося вам приймати рішення залежно від того, як складалася ситуація?

Завдання 1

Поміркуйте, чим відрізняються наведені алгоритми збирання в школу.


   1. Прокидайся
   2. Роби зарядку
   3. Снідай

ФОРМИ ПОДАННЯ АЛГОРИТМІВ

Існують різні форми подання алгоритмів — словесні, словесно-формульні, графічні, у вигляді програмного коду й інші — залежно від того, на якого виконавця орієнтований алгоритм.

У повсякденному житті найчастіше застосовується словесна форма подання. Алгоритм подається як послідовність пронумерованих команд. Команди виконують одну за одною в порядку зростання їх номерів, якщо немає спеціальної вказівки на перехід до виконання команди за іншим номером
в алгоритмі. Словесна форма подання зручна для опису порядку користування приладами, поведінки в разі виникнення надзвичайної ситуації, кулінарних рецептів тощо.

Приклад 1

Подамо алгоритм приготування «швидкої» піци у словесній формі.

1. Змішайте сметану з томатною
    пастою, додайте спеції.
2. Отриманим соусом намастіть
    основу піци.
3. Зверху викладіть шматочки
    помідорів і болгарського перцю,
    половинки маслин.
4. Посипте натертим сиром.
5. Поставте в духову шафу на 5 хв
    для запікання.

Алгоритми обчислень зручно подавати у вигляді формул. Так, алгоритм обчислення площі прямокутного трикутника для виконавця Учень 5 класу можна подати у вигляді 
[latex]S=\frac{ab}{2}[/latex], де a, b — довжини двох менших сторін трикутника.
Записуючи алгоритми, часто комбінують словесне та формульне подання запису команд. Для графічного подання використовують блок-схеми. При цьому команди подають в окремих блоках, а послідовність виконання команд позначають стрілками. 


Блок-схема алгоритму
— графічне подання у вигляді організованої послідовності блоків.

Завдання 2

БАЗОВІ АЛГОРИТМІЧНІ СТРУКТУРИ

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

Завдання 3


Слідування
— це така форма організації вказівок в алгоритмі, за якої дії виконуються послідовно одна за одною, без пропусків або повторень.

Приклад 2

На рисунку зображено блок-схему алгоритму знаходження середнього арифметичного трьох чисел.

Тут:
     a, b, с — вхідні дані;
     S — проміжний результат;
     Sr — вихідні дані (результат виконання алгоритму).


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

Якщо умова істинна, то виконується Дія 1 (гілка Так); якщо умова хибна, то Дія 2 (гілка Ні). Після виконання однієї з дій виконавець переходить до наступної після розгалуження команди. Умову можна подати у вигляді запитання, сформульованого так, щоб допускалася лише одна з двох відповідей: «так» або «ні». Перевірка умови має бути допустимою дією виконавця.
Умови в програмі записуються у вигляді логічних виразів.
Логічними є вирази, результатом яких є True або False.
Х = 5
2<10

Приклад 3

Умова розваги: якщо в касі є квитки, то придбати квиток і переглянути фільм, інакше — піти на прогулянку до парку.

Завдання 4

Завдання 5


Повторення (цикл)
— це така форма організації дій, за якої одна й та сама дія виконується кілька разів залежно від певної умови.

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

Приклад 4


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

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

Приклад 5

Завдання 6



Знайдіть значення величини х
після виконання команди повторення
для різних початкових значень х.

Програма — це впорядкована послідовність команд для комп’ютера, виконання якої реалізує алгоритм розв’язування певної задачі. Отже, програма — це алгоритм, записаний мовою програмування.
Мова програмування — це система позначень, яка використовується для запису алгоритмів для їх реалізації (виконання) за допомогою комп’ютера.
Існує багато мов програмування. Ви знайомі з візуальною мовою програмування Scratch і основними поняттями, які можуть бути користини під час вивчення інших мов.

Питання для самоперевірки 

  1. Назвіть основні способи опису алгоритмів.
  2. Як подаються базові алгоритмічні структури на блок­схемі?
  3. Наведіть приклади умов, які можуть бути використані для організації розгалуження.
  4. Поясніть переваги подання алгоритму у вигляді блок­схеми.
  5. Наведіть приклад алгоритму з розгалуженням, поданого у словесному вигляді.
  6. Наведіть приклад алгоритму з повторенням, поданого у словесному вигляді.

Вправа 19

Виконати завдання.

Комп’ютерне тестування