Алгоритм: поняття, властивості, структура та види
Практично всі в нашому світі підкоряється якимосьзаконам і правилам. Сучасна наука не стоїть на місці, завдяки чому людству відома маса формул і алгоритмів, дотримуючись яких, можна розрахувати і відтворити безліч дій і будівель, створених природою, і втілити в життя ідеї, придумані людиною.
У цій статті ми розберемо основні поняття алгоритму.
Історія появи алгоритмів
Алгоритм - поняття, що з'явилися в XII столітті. Саме слово "алгоритм" походить від латинської інтерпретації імені відомого математика середнього сходу Мухаммеда аль Хорезмі, який написав книгу "Про індійський рахунку". У цій книзі описано, як правильно записувати натуральні числа, використовуючи арабські цифри, і приведено опис алгоритму дій стовпчиком над такими числами.
У XII столітті книга "Про індійський рахунку" була переведена на латинську мову, тоді-то і з'явилося дане визначення.
Взаємодія алгоритму з людиною і машиною
Створення алгоритму вимагає творчого підходу,тому новий список послідовних дій може створити тільки жива істота. А ось для виконання вже існуючих інструкцій фантазію мати не обов'язково, з цим впорається навіть бездушна техніка.
Чудовим прикладом точного виконання заданої інструкції є порожня мікрохвильова піч, яка продовжує працювати, незважаючи на відсутність їжі всередині неї.
Суб'єкт або об'єкт, якому не обов'язкововникати в суть алгоритму, називається формальним виконавцем. Людина теж може стати формальним виконавцем, проте в разі нерентабельності того чи іншого дії мислячий виконавець може все зробити по-своєму. Тому основними виконавцями є комп'ютери, мікрохвильові печі, телефони та інша техніка. Поняття алгоритму в інформатиці має найважливіше значення. Кожен алгоритм складається з розрахунком на конкретного суб'єкта, з урахуванням допустимих дій. Ті об'єкти до яких суб'єкт може застосувати інструкції, складають середу виконавця.
Практично всі в нашому світі підкоряється якимосьзаконам і правилам. Сучасна наука не стоїть на місці, завдяки чому людству відома маса формул і алгоритмів, дотримуючись яких, можна розрахувати і відтворити безліч дій і творінь природи і втілити в життя ідеї, придумані людиною. У цій статті ми розберемо основні поняття алгоритму.
Що таке алгоритм?
Більшість дій, які ми виконуємо вПротягом свого життя, вимагають дотримань ряду правил. Від того, наскільки вірне уявлення має людина про те що, як і в якій послідовності він повинен зробити, залежить якість і результат виконання поставлених перед ним завдань. З дитинства батьки намагаються виробити у своєму чаді алгоритм основних дій, наприклад: прокинутися, заправити ліжко, вмитися і почистити зуби, зробити зарядку, поснідати і т. Д., Список, який людина все життя виконує з ранку теж можна вважати своєрідним алгоритмом.
Алгоритм - це поняття, що означає добірку інструкцій, які необхідно виконувати людині для того, щоб вирішити певне завдання.
Взагалі, алгоритм має безліч визначень, кілька вчених характеризують його по-різному.
Якщо алгоритм, що застосовується людиною щодня, укожного свій, і може змінюватися в залежності від віку і ситуацій, в яких виявляється виконавець, то звід дій, які потрібно виконати для вирішення математичної задачі або для використання техніки, єдиний для всіх і завжди залишається незмінним.
Існує різне поняття алгоритму, види алгоритмів теж різняться - наприклад, для людини, яка переслідує будь-яку мету, і для техніки.
У наше століття інформаційних технологій людищодня виконують звід інструкцій, створених до них іншими людьми, адже техніка вимагає при використанні точного виконання ряду дій. Тому основне завдання викладачів в школах - навчити дітей користуватися алгоритмами, швидко схоплювати і змінювати вже існуючі правила у відповідності зі сформованою ситуацією. Структура алгоритму є одним з тих понять, яке вивчається на уроці математики та інформатики в кожній школі.
Основні властивості алгоритму
1. Дискретність (послідовність окремих дій) - будь-який алгоритм повинен представлятися в вигляді ряду простих дій, кожне з яких має починатися після завершення попереднього.
2. Визначеність - кожне дію алгоритму має бути настільки простим і зрозумілим, щоб у виконавця не виникало питань і не залишалося свободи дій.
3. Результативність - опис алгоритму має бути зрозумілим і закінченим, щоб після виконання всіх інструкцій завдання досягала логічного кінця.
4. Масовість - алгоритм повинен бути застосований до цілого класу задач, вирішити які можна, лише змінивши в алгоритмі цифри. Хоча є думка, що останній пункт відноситься не до алгоритмів, а до всіх математичних методів в цілому.
Часто в школах, щоб дати дітям більш зрозумілеопис алгоритмів, вчителі приводять в приклад приготування їжі по кулінарній книзі, виготовлення ліків за рецептом або процес миловаріння на основі майстер-класу. Однак, з огляду на друга властивість алгоритму, в якому йдеться про те, що кожен пункт алгоритму повинен бути настільки зрозумілим, щоб його міг виконати абсолютно будь-яка людина і навіть машина, можна прийти до висновку що будь-який процес, що вимагає прояви хоч якийсь фантазії, алгоритмом назвати не можна. А приготування і рукоділля вимагають певних навичок і добре розвиненої уяви.
Існують різні типи алгоритмів, але є три основних.
циклічний алгоритм
У такому типі деякі пункти повторюються по декілька разів. Список дій, які необхідно повторити для досягнення мети, називається тілом алгоритму.
Ітерація циклу - це виконання всіх пунктів, що входять в тіло циклу.
Частини циклу, які мають постійно певну кількість разів, називаються циклом з фіксованим числом ітерацій.
Ті частини циклу, частота повторення яких залежить від ряду умов, називаються невизначеними.
Найпростіший вид циклу - це фіксований.
Існує два види циклічних алгоритмів:
Цикл з передумовою. В цьому випадку тіло циклу перевіряє свою умову до того, як він буде виконаний.
Цикл з умовою поста. У циклі з умовою поста перевірка умови відбувається після закінчення виконання циклу.
Лінійні типи алгоритмів
Інструкції таких схем виконуються одноразово втій послідовності, в якій вони представлені. Наприклад, лінійним алгоритмом можна вважати процес заправки постелі або чищення зубів. Також до цього типу належать математичні приклади, де присутні лише дії додавання і віднімання.
розгалужується алгоритм
У розгалужуються типі є кілька варіантів дій, яке з них буде застосовано, залежить від умови.
Приклад. Питання: "Йде дощ?" Варіанти відповідей: "Так" або "Ні". Якщо "так" - відкрийте парасольку, якщо "ні" - покладіть парасольку в сумку.
допоміжний алгоритм
Допоміжний алгоритм можна використовувати в інших алгоритмах, вказавши лише його назва.
Терміни, що зустрічаються в алгоритмах
Умова знаходиться між словами "якщо" і "тоді".
Наприклад: якщо ви знаєте англійську мову, тоді натисніть один. У цьому реченні умовою буде частина фрази «ви знаєте англійську мову».
дані - відомості, які несуть певне смислове навантаження і представлені в такому вигляді, щоб їх можна було передавати і використовувати для цього алгоритму.
алгоритмічний процес - рішення задачі за алгоритмом із застосуванням певних даних.
структура алгоритму
Алгоритм може мати різну структуру. Для того щоб описати алгоритм, поняття якого залежить і від його будови, можна скористатися цілим рядом різних способів, наприклад: словесний, графічний, за допомогою спеціально розробленого алгоритмічного мови.
Який із способів буде використаний, залежить від кількох факторів: від складності завдання, від того, наскільки потрібно деталізувати процес вирішення завдання і т. Д.
Графічний варіант побудови алгоритму
Графічний алгоритм - поняття, що мають на увазі під собою розкладання дій, які потрібно виконати для вирішення певної задачі, за певними геометричних фігур.
Графічні схеми зображуються не абияк. Для того щоб їх міг зрозуміти будь-яка людина застосовуються найчастіше блок-схеми і структурограмми Насс-Шнейдермана.
Також блок-схеми зображуються відповідно до ГОСТ-19701-90 і ГОСТ-19.003-80.
Графічні фігури, що застосовуються в алгоритмі, діляться на:
Основні. Основні зображення застосовуються для позначення операцій, потрібних для обробки даних при вирішенні задачі.
Допоміжні. Допоміжні зображення потрібні для позначення окремих, не найважливіших, елементів рішення задачі.
У графічному алгоритмі геометричні фігури, які використовуються для позначення даних, називаються блоками.
Всі блоки йдуть в послідовності "зверху вниз"і "зліва направо" - це правильний напрямок потоку. При правильній послідовності лінії, що з'єднують між собою блоки, не показують напрямок. В інших випадках напрямок ліній позначається за допомогою стрілок.
У правильної схеми алгоритму не повинно бути більше одного виходу з обробних блоків і менш двох виходів з блоків, що відповідають за логічні операції і перевірку виконання умов.
Як правильно побудувати алгоритм?
Структура алгоритму, як було сказано вище, повинна будуватися по ГОСТ, інакше вона не буде зрозуміла і доступна оточуючим.
Загальна методика по запису включає в себе наступні пункти:
Назва, за яким буде зрозуміло, яке завдання можна вирішити за допомогою цієї схеми.
У кожного алгоритму повинні бути чітко позначені початок і кінець.
У алгоритмів повинні бути чітко і ясно описані всі дані, як вхідні, так і вихідні.
При складанні алгоритму слід зазначити дії, які дозволять виробляти потрібні для вирішення завдання дії над обраними даними. Зразковий вид алгоритму:
- Ім'я схеми.
- Дані.
- Початок.
- Команди.
- Кінець.
Правильна побудова схеми істотно полегшить обчислення алгоритмів.
Геометричні фігури, що відповідають за різні дії в алгоритмі
Горизонтально розташований овал - початок і кінець (знак завершення).
Горизонтально розташований прямокутник - обчислення або інші дії (знак процесу).
Горизонтально розташований паралелограм - введення або виведення (знак даних).
Горизонтально розташований ромб - перевірка умови (знак рішення).
Витягнутий, горизонтально розташований шестикутник - модифікація (знак підготовки).
Моделі алгоритмів представлені нижче на малюнку.
Формульно-словестний варіант побудови алгоритму.
Формульно-словестние алгоритми записуються вдовільній формі, на професійній мові тієї області, до якої належить задача. Опис дій таким способом здійснюють за допомогою слів і формул.
Поняття алгоритму в інформатиці
У комп'ютерній сфері все будується на алгоритмах. Без чітких вказівок, введених у вигляді спеціального коду, що не буде працювати жодна техніка або програма. На уроках інформатики учням намагаються дати основні поняття алгоритмів, навчити користуватися ними і самостійно їх створювати.
Створення і використання алгоритмів в інформатиці - процес більш творчий, ніж, наприклад, виконання вказівок до вирішення завдання в математиці.
Існує також спеціальна програма«Алгоритм», яка допомагає людям, нетямущим в області програмування, створювати свої власні програми. Такий ресурс зможе стати незамінним помічником для тих, хто робить перші кроки в інформатиці та хоче створювати свої ігри або будь-які інші програми.
З іншого боку, будь-яка програма - алгоритм. Але якщо алгоритм несе в собі лише дії, які потрібно виконувати, вставляючи свої дані, то програма вже несе в собі готові дані. Ще одна відмінність - це те, що програма може бути запатентована і бути приватною власністю, а алгоритм немає. Алгоритм - поняття ширше, ніж програма.
висновок
У цій статті ми розібрали поняття алгоритму і його види, дізналися, як правильно записувати графічні схеми.