В алгоритмах
команди записуються один за одним у певному порядку. Виконуються вони не
обов'язково в записаній послідовності: залежно від порядку виконання команд
можна виділити три типи алгоритмів:
• лінійні алгоритми;
• алгоритми з розгалуженнями;
• алгоритми з повтореннями.
Лінійні
алгоритми
Алгоритм, у якому
команди виконуються в порядку їх запису, тобто послідовно один за одним,
називається лінійним.
Наприклад,
лінійним є наступний алгоритм посадки дерева:
1) викопати в землі ямку;
2) вилучити в ямку саджанець;
3) засипати ямку із саджанцем землею;
4) полити саджанець водою.
Алгоритми
з розгалуженнями
Ситуації, коли
заздалегідь відома послідовність необхідних дій, зустрічаються вкрай рідко. У
житті часто доводиться ухвалювати рішення залежно від обстановки. Якщо йде дощ,
ми беремо парасоль і надягаємо плащ; якщо пекуче, надягаємо легкий одяг.
Зустрічаються й більш складні умови вибору, У деяких випадках від обраного
рішення залежить подальша доля людини.
Логікові
ухвалення рішення можна описати так:
ЯКЩО
ТО ІНАКШЕ
Приклади:
• ЯКЩО прагнеш бути здоровий, ТО загартовуйся,
ІНАКШЕ валяйся весь день на дивані;
• ЯКЩО
низько ластівки літають, ТО
буде дощ, ІНАКШЕ дощу не буде;
• ЯКЩО уроки виучені, ТО йди гуляти, ІНАКШЕ вчи
уроки.
У деяких
випадках можуть бути відсутні;
ЯКЩО
ТО
Приклад:
• ЯКЩО назвався груздем, ТО полізай у кузов.
Форма
організації дій, при якій залежно від виконання деякої умови відбувається одна
або інша послідовність кроків, називається розгалуженням.
Зобразимо б виді блок-схеми послідовність дій учня
6 класу Мухіна Васі, яку він уявляє собі так: «Якщо Павлик будинку, будемо
вирішувати завдання по математиці. А якщо ні, то слід подзвонити Марині й разом
готовити доповідь по біології. Якщо ж Марини немає будинку, то треба сісти за
твір.»
Алгоритми
з повтореннями
На практиці
часто зустрічаються завдання, у яких одне або кілька дій буває необхідно
повторити кілька раз, поки дотримується деяке заздалегідь установлене умова.
Форма
організації дій, при якій виконання однієї й тієї ж послідовності команд
повторюється, поки виконується деяке заздалегідь установлене умова, називається
циклом (повторенням).
Алгоритм, що
містить цикли, називається циклічним алгоритмом або алгоритмом з повтореннями.
Ситуація, при
якій виконання циклу ніколи не закінчується, називається зацикленням. Слід
розробляти алгоритми, що не допускають таких ситуацій.
Розглянемо
приклад з математики.
Натуральне
число називають простим, якщо воно має тільки два дільники: одиницю й саме це
число .
2, 3, 5, 7 —
прості числа; 4, 6, 8 — ні. В III столітті до нашої ери грецький математик Ератосфен
запропонував наступний алгоритм для знаходження всіх простих чисел, менших
заданого числа n;
1) виписати всі
натуральні числа від 1 до n;
2) викреслити
1;
3) підкреслити
найменше з невідмічених чисел;
4) викреслити
всі числа, кратні підкресленому на попередньому кроці;
5) якщо в
списку є невідмічені числа, то перейти до кроку 3, а якщо ні, то всі
підкреслені числа — прості.
Це циклічний алгоритм. При його виконанні повторення кроків 3-5
відбувається, поки у вихідному списку залишаються невідмічені числа.