Алгоритм циклічної структури - це алгоритм, в якому відбувається багаторазове повторення одного і того ж ділянки програми. Такі повторювані ділянки обчислювального процесу називаються циклами. Програма циклічної структури містить один або кілька циклів. Розрізняють детерміновані цикли із заздалегідь відомим числом повторень і ітераційні цикли, в яких число повторень заздалегідь невідомо. Змінюється в циклі змінна називається параметром циклу.
Для організації циклу необхідно виконати наступні дії:
1) задати перед циклом початкове значення параметра циклу;
2) змінювати параметр перед кожним новим повторенням циклу;
3) перевіряти умова повторення циклу;
4) управляти циклом, тобто переходити до його початку, якщо він не закінчений, або виходити з нього після закінчення.
У мові Паскаль існує 3 види циклів:
1) цикл з параметром або цикл типу for,
2) цикл з передумовою або цикл типу while,
3) цикл з умовою поста або цикл типу repeat. until.
У циклі типу for число повторень відомо заздалегідь, в циклах типу while і repeat. until число повторень циклу заздалегідь невідомо, проводиться перевірка умови повторення циклу: в циклі типу while - перед циклом, в циклі типу repeat. until - після його закінчення.
У циклах типів for і while повторяющ частина (тіло циклу) складається з одного оператора, якщо потрібно виконати в циклі кілька операторів, вони полягають в операторні дужки begin. end, утворюючи складовою оператор. У циклі типу repeat. until тіло циклу поміщається між зарезервованими словами мови (лексемами) repeat і until, операторні дужки не потрібні, в назві циклу його тіло умовно позначається трьома крапками.
За допомогою циклу типу for зручно знаходити суми, твори, шукати максимальні і мінімальні значення і т.п. При знаходженні суми деякої змінної, наприклад S присвоюється значення 0, потім в циклі до цієї змінної додається відповідний член заданій послідовності. При знаходженні твори змінної присвоюється значення 1, потім в циклі ця змінна множиться на загальний член послідовності.
Приклад циклу типу for
Обчислення n чисел Фібоначчі:
F1 = 1; F2 = 1; ...; Fn = Fn-1 + Fn-2.
наприклад F3 = F2 + F1 = 1 + 1 = 2; F4 = 2 + 1 = 3 і т.д.
Приклад циклу типу while
Складання таблиці функції y = a 3 / (a 2 + x2) для х, що належать відрізку [-1; 1] з кроком 0.1. Так як параметр циклу типу for повинен бути цілочисельним, зручніше використовувати цикл while, в якому значення х можна змінювати при кожному кроці на D х = 0.1
Умова х<1.05 соответствует каждому значению х плюс половина шага .
Приклад циклу типу repeat. until
Визначити число n, при якому сума квадратів натурального ряду чисел від 1 до n не перевищить величину K, введену з клавіатури. Тобто
S> = K, де S =
Цикл повторюється до тих пір, поки умова записане після ключового слова until, буде хибним (не виконується). Як тільки ця умова виконається, відбувається вихід з циклу. Після закінчення циклу проводиться друк результату (оператор writeln). Відзначимо, що цикл з передумовою (типу while) може не виконатися жодного разу, цикл з умовою поста repeat. until виконається по крайней мере 1 раз. Коли число повторень циклу невідомо заздалегідь, застосовуються цикли з передумовою або з остусловіем. Коли число повторень циклу відомо заздалегідь, як правило, застосовується цикл типу for. Але будь-який цикл типу for можна замінити циклом з передумовою або постусловіем.