
- •Модуль 2 Алгоритми
- •2.1 Поняття алгоритму
- •2.2 Види алгоритмів
- •2.2.1 Лінійні алгоритми
- •2.2.2 Алгоритми з розгалуженням
- •3 Якщо діаметр більший за заданий, то помістити виріб в магазин № 1.
- •2.2.3 Циклічні алгоритми
- •1 Поки на конвеєрі є виріб, виконувати дії:
- •7 Кінець циклу.
- •1 Початок циклу.
- •6 Поки у вагоні є вільне місце, повторювати дії циклу.
- •1 Початок циклу.
- •7 Поки у вагоні є вільне місце, повторювати дії циклу.
- •8 Кінець циклу.
- •1 Початок циклу.
- •1 Поки вміст лічильника менше 10, виконувати дії:
- •2.2.4 Допоміжні алгоритми
- •2.3 Способи запису алгоритмів
- •2.3.1 Словниковий запис
- •2.3.2 Графічне представлення
- •2.3.3 Алгоритмічна мова
Модуль 2 Алгоритми
План
2.1 Поняття алгоритму
2.2 Види алгоритмів
2.3 Способи запису алгоритмів
Автоматизація виробництва дозволяє звільнити людину від безпосередньої участі у виробничих процесах, переклавши їх виконання на плечі технічних засобів. Але для того, щоб «навчити» їх виконанню якої-небудь роботи, людині потрібно спочатку ретельно вивчити цю роботу самому, усвідомити мету роботы — що саме повинне вийти в результаті її виконання, уявити собі до дрібниць кожну дію, зрозуміти, від яких умов і як воно залежить, і детально описати порядок виконання дій.
Сучасні технічні засоби багато в чому перевершують людину — вони можуть виконувати різні дії швидше і точніше, створювати великі зусилля, працювати без втоми, не здійснюючи помилок тривалий час. Але кожну дію, навіть найпростішу (наприклад, повернутися в початкове положення), вони можуть виконати тільки по команді людини.
Отже, автоматизацію будь-якого процесу потрібно починати з детального переліку дій, з яких складається процес. Такий перелік складається і записується за певними правилами, які і будуть розглянуті в цій главі.
2.1 Поняття алгоритму
Кожен з нас щодня здійснює безліч дій, не замислюється про те, як саме ми їх виконуємо. Ми робимо покупки, користуємося громадським транспортом, ходимо в кіно, готуємо їжу і так далі
Ми діємо автоматично і зазвичай отримуємо саме той результат, до якого прагнули.
Алгоритм — це послідовність дій, що ведуть до досягнення мети.
При складанні алгоритмів складні дії часто розбиваються на простіші, аж до самих елементарних.
Людині детальна інструкція може здатися смішною, але саме таку інструкцію треба написати роботу.
Деталізація дозволяє найскладнішу дію представити як сукупність простих дій, а виконання найпростіших дій можна доручити машині — це прямий шлях до автоматизації.
Слово «машина» використовується тут в найширшому сенсі — як технічний засіб, здатний виконувати за людину велику кількість самих різних дій. Причому машини можуть виконувати не лише чисто фізичні дії — переміщувати щось в просторі або обробляти за допомогою інструментів, але і аналізувати, обчислювати, оцінювати, приймати рішення і так далі
Усі ці здібності машинам дає людина. Машини на відміну від людини не мають розуму, тому вони здатні виконувати тільки елементарні дії, які точно відповідають отриманим командам. Якщо для людини алгоритм — це послідовність дій, то для машини — це послідовність команд, які їй належить розпізнати і виконати для досягнення цілі.
Розпізнати команду машина зможе тільки у тому випадку, якщо ця команда однозначна і її різні тлумачення неможливі. Тому для машини кожна команда має бути записана особливо - на зрозумілому машині мові.
Алгоритм, записаний на зрозумілому машині мові, називається програмою.
2.2 Види алгоритмів
2.2.1 Лінійні алгоритми
Алгоритми, в яких усі дії виконуються послідовно, одно за іншим, називаються лінійними алгоритмами.
2.2.2 Алгоритми з розгалуженням
Алгоритми, в яких робиться вибір одного з декількох варіантів дій залежно від виконання деякої умови, називаються алгоритмами з розгалуженням, або умовними алгоритмами.
Умова та послідовність дій згідно цієї умови називається гілкою алгоритму.
Де починається і де закінчується кожна гілка? При виконанні умови Якщо послідовність дій в алгоритмі триває так, як вона записана, — адже ніяких підстав для її порушення немає. Де вона закінчується? Там, де закінчуються дії, передбачені умовою Якщо, тобто перед іншою умовою — Інакше.
А якщо умова Якщо не виконана? Тоді з'являються підстави для порушення послідовності дій. Потім перевірки виконання (точніше, невиконання) умови Якщо починається виконання дій, що стоять в алгоритмі після Інакше, тобто дій другої гілки.
Для зняття невизначеності в алгоритм вводять спеціальний покажчик, що відділяє гілки від продовження алгоритму. Зазвичай таким покажчиком є фраза Кінець розгалуження. Тому завершення дій будь-якої гілки потрібно відшукати фразу Кінець розгалуження і продовжити виконання алгоритму з дії, яка слідує після цієї фрази.
Розглянемо ще один алгоритм з розгалуженням. Припустимо, що потрібно зробити сортування циліндричних виробів по діаметру і розподілити їх у два магазини (ящики, коробки). Вироби поступають з конвеєра в пристрій, який вимірює їх діаметр, і залежно від результатів виміру інший пристрій поміщає виріб в той або інший магазин.
Алгоритм сортування може бути наступним:
1 Встановити виріб у вимірювальний пристрій.
2 Виміряти діаметр виробу.