Алгоритмічні структури (типи алгоритмів), планета інформатики
В рамках структурного програмування завдання, що мають алгоритмічне рішення, можуть бути описані з використанням наступних алгоритмічних структур:
- Дотримання. Передбачає послідовне виконання команд зверху вниз. Якщо алгоритм складається лише з структур проходження, то він є лінійним.
- Розгалуження. Виконання програми йде по одній з двох, кількох або безлічі гілок. Вибір гілки залежить від умови на вході розгалуження і надійшли сюди даних.
- Цикл. Передбачає можливість багаторазового повторення певних дій. Кількість повторень залежить від умови циклу.
- Функція (підпрограма). Команди, відокремлені від основної програми, виконуються лише в разі їх виклику з основної програми (з будь-якого її місця). Одна і та ж функція може викликатися з основної програми як завгодно раз.
Опис різних алгоритмічних структур на мові блок-схем
розгалуження if
Це найпростіший тип розгалуження. Якщо результат обчислення виразу-умови повертає true (правда), то виконання алгоритму йде по гілці «Так», в яку включені додаткові вирази-дії. Якщо умова повертає false (брехня), то виконання алгоритму йде по гілці «ні», тобто залишиться активним основна гілка програми.
Розгалуження if-else
Якщо вираз-умова повертає true (правда), то виконання алгоритму йде по гілці «Так», якщо умова не виконується (false), то виконання йде по гілці «Ні». При будь-якому результаті вираження-умови можна повернутися в основну гілку програми, минаючи додаткові дії.
Розгалуження if-elif-else
Кількість умов може бути по-різному. Якщо виконується перша, то після виконання дій, програма переходить до основної гілці, не перевіряючи подальші умови. Якщо перша умова повертає брехня, то перевіряється друга умова. Якщо друга умова повертає правду, то виконуються дії, включені в другу гілку конструкції. Остання умова перевіряється лише в тому випадку, якщо жодна до нього не дало в результаті true. Дану алгоритмічну конструкцію (if - elif - else) не слід плутати з алгоритмічної конструкцією «Вибір».
цикл while
Поки умова виконується (результат логічного виразу дає true), будуть виконуватися дії тіла циклу. Після чергового виконання вкладених дій умова знову перевіряється. Для того щоб виконання алгоритму лише зациклилося, в тілі циклу (крім інших дій) має бути вираз, в результаті виконання якого буде змінюватися змінна, яка використовується в умови. Тіло циклу може жодного разу не виконається, якщо умова з самого початку давало false.
цикл do
У цьому циклі вперше умова перевіряється лише після виконання дій тіла циклу. Якщо умова повертає true, то вирази-дії повторюються знову. Яким би не було умова, тіло даного циклу хоча б раз, але виконається.
цикл for
Даний цикл також називають циклом «Для» (for). У його заголовку вказується три параметра: початкове значення змінної (від), звичайно значення (до) і її зміна за допомогою арифметичної операції на кожному «обороті» циклу (крок).
Зображення, використані в статті