Проїхати три зупинки.
Вийти з автобуса.
Ці приклади не що інше, як алгоритм. Незважаючи на значну відмінність в суті самих дій цих прикладів, можна знайти в них багато спільного. Ці загальні характеристики називають властивостями алгоритму. Розглянемо їх.
Дискретність (від лат. Discretus - розділений, переривчастий) - це розбиття алгоритму на ряд окремих закінчених дій (кроків).
У наведених вище алгоритмах загальним є необхідність суворого дотримання послідовності виконання дій. Спробуємо переставити в першому прикладі друге і третє дії. Ви, звичайно, зможете виконати і цей алгоритм, але двері навряд чи відкриється. А якщо поміняти місцями, припустимо, п'яте і друге дії у другому прикладі, алгоритм стане нездійсненним.
Детермінованість (від лат. Determinate - визначеність, точність) - будь-яка дія алгоритму має бути строго і недвозначно визна-делено в кожному випадку.
Наприклад, якщо до зупинки підходять автобуси різних маршрутів, то в алгоритмі має бути вказаний конкретний номер маршруту - 5. Крім того, необхідно вказати точну кількість зупинок, яке треба проїхати, - скажімо, три.
Кінцівка - кожна дія окремо і алгоритм в цілому повинні мати можливість завершення.
У наведених прикладах кожне описане дію реально і може бути виконано. Тому і алгоритм має межу, тобто - кінцевий.
Масовість - один і той же алгоритм можна використовувати з різними вихідними даними.
Наприклад: алгоритм приготування будь-якого бутерброда.
Відрізати шматок хліба.
Намазати його маслом.
Відрізати шматок будь-якого іншого харчового продукту (ковбаси, сиру, м'яса).
Накласти відрізаний шматок на кусень хліба.
Результативність - в алгоритмі не було помилок.
Приклад: розглянемо алгоритм знаходження більшого з двох заданих чисел А і В:
З числа А відняти число В.
Якщо вийшло від'ємне значення, то повідомити, що число В більше.
Якщо вийшло позитивне значення, то повідомити, що число А більше.
При всій простоті і очевидності алгоритму, не кожен відразу зрозуміє його помилковість. Адже якщо обидва числа рівні, то не вийде ні-якого повідомлення. Значить, треба обов'язково передбачити це варіант, наприклад:
З числа А відняти число В.
Якщо вийшло від'ємне значення, то повідомити, що число В більше.
Якщо вийшло позитивне значення, то повідомити, що число А більше.
Якщо вийшов нуль, то повідомити, що числа рівні.