Лекції >> Програмування, комп’ютери і кібернетика >> Поняття про алгоритм

Алгоритм – це точне і повне описання послідовності виконання скінчених дій, необхідних для розв’язку задачі даного типу. Слово “алгоритм” виникло від algorithmi – латинської форми написання імені великого математика аль-Хорезмі, який у ІХ ст. описав правила в конання арифметичних дій над числами у десятковій системі числення.

 

Основні властивості алгоритмів:

  • дискретність. Обчислювальний процес, що описується алгоритмом, має бути розбитий на послідовність окремих дій. Таке описання являє собою послідовність чітко відокремлених одна від одної вказівок, що утворюють перервну (дискретну) структуру алгоритмічного процесу – тільки виконавши вимоги однієї вказівки, можна перейти до наступної;
  • детермінованість. Алгоритм не може містити вказівок, смисл яких сприймається неоднозначно. Крім того, ітко відокремлених одна від одної вказівок, що утворюють перервну (дискретну) структуру алгоритмічного процесу – тільки виконавши вимоги однієї вказівки, можна перейти до наступної;
  • детермінованість. Алгоритм не може містити вказівок, смисл яких сприймається неоднозначно. Крім того, після виконання чергової вказівки, цілком однозначно має бути визначено, яку вказівку потрібно виконувати наступною. Отже, враховуючи однозначність послідовності дій, із яких складається алгоритм, застосування його до одних і тих же вхідних даних має забезпечувати один і той же результат;
  • масовість. Алгоритм складається не для розв’язку однієї конкретної задачі, а для цілого класу задач даного типу;
  • результативність. При точному виконанні всіх вказівок алгоритму  обчислювальний процес має зупинитися за скінчену кількість кроків і при цьому має бути одержаний певн після виконання чергової вказівки, цілком однозначно має бути визначено, яку вказівку потрібно виконувати наступною. Отже, враховуючи однозначність послідовності дій, із яких складається алгоритм, застосування його до одних і тих же вхідних даних має забезпечувати один і той же результат;
  • масовість. Алгоритм складається не для розв’язку однієї конкретної задачі, а для цілого класу задач даного типу;
  • результативність. При точному виконанні всіх вказівок алгоритму  обчислювальний процес має зупинитися за скінчену кількість кроків і при цьому має бути одержаний певний результат роботи.

Описати алгоритм – означає розбити його на окремі етапи, визначити, яку роботу необхідно виконати на кожному етапі, вказати порядок виконання цих етапів.

Для того, щоб алгоритм був зрозумілий не тільки його автору, а й будь-якому виконавцю, у тому числі й ЕОМ, розроблені загальноприйняті способи описання алгоритмів. Найуживаніші серед них: словесне описання у термінах природної мови, графічне описання та описання у термінах деякої алгоритмічної мови.

Графічне описання алгоритмів

Розглянемо описання алгоритмів у вигля масовість. Алгоритм складається не для розв’язку однієї конкретної задачі, а для цілого класу задач даного типу;

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

    Для того, щоб алгоритм був зрозумілий не тільки його автору, а й будь-якому виконавцю, у тому числі й ЕОМ, розроблені загальноприйняті способи описання алгоритмів. Найуживаніші серед них: словесне описання у термінах природної мови, графічне описання та описання у термінах деякої алгоритмічної мови.

    Графічне описання алгоритмів

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

    Блоки зображуються у вигляді плоских геометричних фігур: овалу (блок “початок-кінець алгоритму”), паралелограма (блок вводу-виводу), прямокутника (функціональний блок [1]), ромба (логічний блок), шестигранника (блок підготовки – послідовної зміни параметру), прямокутника з подвійними бічними сторонами (блок виконання типового процесу – підпрограми) тощо.

    Лінії потоку вказують на порядок виконання послідовності операцій алгоритму (порядок переходу від блоку до блоку). При цьому напрямок лінії потоку зверху вниз і зліва направо приймається за головний і стрілкою не позначається. Напрямок лінії знизу вверх і справа наліво позначається стрілкою. Місце злиття ліній потоку допускається позначати точкою. 



    [1] Цей блок ще називають блоком обробки або обчислювальним блоком. У найпростішому випадку це арифметичний блок.

    Схожі матеріали
    05.10.2012 Введення та виведення даних, розробки та опису лінійних програм.
    20.12.2011 Pascal - лабораторні роботи - для студентів III-го курсу (лекції Ляшенко Б.М.)
    12.12.2010 Робота з підпрограмами
    12.12.2010 Робота з рядковими та символьними величинами.
    12.12.2010 Робота з циклічними програмами
    12.12.2010 Робота з масивами даних.
    12.12.2010 Розробка та описання програм з розгалуженнями
    12.12.2010 Початки програмування
    12.12.2010 Етапи розв’язання задач з використанням ЕОМ
    12.12.2010 Поняття про алгоритм

    Тести даної категорії
    12.12.2010 ПОЧАТКИ АЛГОРИТМІЗАЦІЇ. ВСТУП ДО ПРОГРАМУВАННЯ

    Останні створені тести
    28.03.2016 Ахметов Р. Ф. Основи наукових досліджень. Тести. 500 питань
    16.11.2015 Олімпійські ігри Стародавньої Греції. Відродження олімпійських ігор. Олімпійський рух сучасності.
    28.10.2015 British Writers. Тест для студентів 4 курсу ННІ педагогіки
    27.10.2015 The Passive Voice. Тест для студентів 2 курсу ННІ педагогіки
    27.10.2015 Articles. Тест для студентів 1 курсу неспеціальних факультетів
    27.10.2015 The Active Voice. Тест для студентів 2 курсу ННІ педагогіки
    08.10.2014 INTEL
    22.10.2012 Цивільний захист
    28.09.2012 Питання для поточного контролю
    26.09.2012 Мовнокомунікативна компетентність. Орфографічна складова
    Рекомендовані лекції
    26.09.2012 Програмне забезпечення (ПЗ). Апаратне забезпечення інформаційної системи
    15.03.2016 ОС та СП. Тема 4. Файлові системи. Слайди
    12.12.2010 Переборні задачі
    09.12.2014 Лекції з ЦЗ
    05.04.2016 ОС та СП. Тема 7. Міжпроцесова та міжпотокова взаємодія. Тези
    12.12.2010 Вирази, операції. Числові функції
    28.09.2014 Лекції з курсу "Малюнок в практиці психодіагностики"
    15.03.2016 ОС та СП. Тема 4. Файлові системи. Тези
    22.02.2016 ОС та СП. Тема 1. Початкові відомості про операційні системи. Слайди
    28.03.2016 ОС та СП. Тема 6. Планування. Слайди