|
|
| Рядок 1: |
Рядок 1: |
| − | | + | Типи алгоритмів |
| − | В алгоритмах команди записуються один за одним у певному порядку. Виконуються вони не обов'язково в записаній послідовності: залежно від порядку виконання команд можна виділити три типи алгоритмів:
| + | Призначення блоків випливає з їхніх назв. Блоки з’єднують лініями, які описують послідовність виконання команди. Ці лінії називаються лініями потоків передавання інформації. Природні напрями потоків зверху-вниз і зліва направо. Якщо напрямок потоку інший то лінія повинна мати стрілку. |
| | + | Типи алгоритмів |
| | + | Є 4-ри типи алгоритмів: |
| | + | -прості; |
| | + | -розгалужені; |
| | + | -циклічні; |
| | + | -універсальні; |
| | + | |
| | | | |
| − | • лінійні алгоритми;
| + | <center>'''Лінійні алгоритми (прості)'''</center> [[Файл:Bbb.jpg|350px|right]] |
| − | | + | |
| − | • алгоритми з розгалуженнями;
| + | |
| − | | + | |
| − | • алгоритми з повтореннями.
| + | |
| | | | |
| | + | Алгоритм, у якому команди виконуються в порядку їх запису, тобто послідовно один за одним, називається лінійним. |
| | | | |
| | | | |
| − | <center>'''Лінійні алгоритми'''</center> [[Файл:Bbb.jpg|350px|right]]
| |
| − |
| |
| − |
| |
| − | Алгоритм, у якому команди виконуються в порядку їх запису, тобто послідовно один за одним, називається лінійним.
| |
| − |
| |
| − | Наприклад, лінійним є наступний алгоритм посадки дерева:
| |
| − |
| |
| − | 1) викопати в землі ямку;
| |
| − |
| |
| − | 2) вилучити в ямку саджанець;
| |
| − |
| |
| − | 3) засипати ямку із саджанцем землею;
| |
| − |
| |
| − | 4) полити саджанець водою.
| |
| − |
| |
| − |
| |
| | <center>'''Алгоритми з розгалуженнями'''</center> [[Файл:Iges.jpg|350px|right]] | | <center>'''Алгоритми з розгалуженнями'''</center> [[Файл:Iges.jpg|350px|right]] |
| | | | |
| − | Ситуації, коли заздалегідь відома послідовність необхідних дій, зустрічаються вкрай рідко. У житті часто доводиться ухвалювати рішення залежно від обстановки. Якщо йде дощ, ми беремо парасоль і надягаємо плащ; якщо пекуче, надягаємо легкий одяг. Зустрічаються й більш складні умови вибору, У деяких випадках від обраного рішення залежить подальша доля людини.
| |
| − |
| |
| − | Логікові ухвалення рішення можна описати так:
| |
| − |
| |
| − | ЯКЩО ТО ІНАКШЕ
| |
| − |
| |
| − | ''Приклади:''
| |
| − |
| |
| − | • ЯКЩО прагнеш бути здоровий, ТО загартовуйся, ІНАКШЕ валяйся весь день на дивані;
| |
| − |
| |
| − | • ЯКЩО низько ластівки літають, ТО буде дощ, ІНАКШЕ дощу не буде;
| |
| − |
| |
| − | • ЯКЩО уроки виучені, ТО йди гуляти, ІНАКШЕ вчи уроки.
| |
| − |
| |
| − | У деяких випадках можуть бути відсутні;
| |
| − |
| |
| − | ЯКЩО ТО
| |
| − |
| |
| − | ''Приклад:''
| |
| − |
| |
| − | • ЯКЩО назвався груздем, ТО полізай у кузов.
| |
| − |
| |
| − | Форма організації дій, при якій залежно від виконання деякої умови відбувається одна або інша послідовність кроків, називається розгалуженням.
| |
| − |
| |
| − | Зобразимо б виді блок-схеми послідовність дій учня 6 класу Мухіна Васі, яку він уявляє собі так: «Якщо Павлик будинку, будемо вирішувати завдання по математиці. А якщо ні, то слід подзвонити Марині й разом готовити доповідь по біології. Якщо ж Марини немає будинку, то треба сісти за твір.»
| |
| − |
| |
| − |
| |
| | | | |
| | <center>'''Алгоритми з повтореннями'''</center> [[Файл:Загруже.jpg|350px|right]] | | <center>'''Алгоритми з повтореннями'''</center> [[Файл:Загруже.jpg|350px|right]] |
| | + | |
| | | | |
| − |
| + | Універсальні алгоритми – це такі які містять в собі вище перечисленні такі алгоритми. |
| − | На практиці часто зустрічаються завдання, у яких одне або кілька дій буває необхідно повторити кілька раз, поки дотримується деяке заздалегідь установлене умова.
| + | |
| − | | + | |
| − | Форма організації дій, при якій виконання однієї й тієї ж послідовності команд повторюється, поки виконується деяке заздалегідь установлене умова, називається циклом (повторенням).
| + | |
| − | | + | |
| − | Алгоритм, що містить цикли, називається циклічним алгоритмом або алгоритмом з повтореннями.
| + | |
| − | | + | |
| − | Ситуація, при якій виконання циклу ніколи не закінчується, називається зацикленням. Слід розробляти алгоритми, що не допускають таких ситуацій.
| + | |
| − | | + | |
| − | Розглянемо приклад з математики.
| + | |
| − | | + | |
| − | Натуральне число називають простим, якщо воно має тільки два дільники: одиницю й саме це число .
| + | |
| − | | + | |
| − | 2, 3, 5, 7 — прості числа; 4, 6, 8 — ні. В III столітті до нашої ери грецький математик Ератосфен запропонував наступний алгоритм для знаходження всіх простих чисел, менших заданого числа n;
| + | |
| − | | + | |
| − | 1) виписати всі натуральні числа від 1 до n;
| + | |
| − | | + | |
| − | 2) викреслити 1;
| + | |
| − | | + | |
| − | 3) підкреслити найменше з невідмічених чисел;
| + | |
| − | | + | |
| − | 4) викреслити всі числа, кратні підкресленому на попередньому кроці;
| + | |
| − | | + | |
| − | 5) якщо в списку є невідмічені числа, то перейти до кроку 3, а якщо ні, то всі підкреслені числа — прості.
| + | |
| − | | + | |
| − | Це циклічний алгоритм. При його виконанні повторення кроків 3-5 відбувається, поки у вихідному списку залишаються невідмічені числа.
| + | |
Алгоритм, у якому команди виконуються в порядку їх запису, тобто послідовно один за одним, називається лінійним.