Цикл - це багато разів повторюються фрагменти програм. Алгоритм циклічної структури - це алгоритм, що містить цикли. 
 ТР існує три оператори циклу:
 - цикл з передумовою;
 
 - цикл з постумовою;
 
 - цикл з параметром.
 
Для всіх циклів характерні наступні особливості:
 - значення змінних використовуються в циклі, і не змінюються в ньому повинні бути визначені до входу в цикл;
 
 - вхід у цикл можливий тільки через його початок;
 
 - вихід їх циклу здійснюється як в результаті його природного закінчення, так і за допомогою операторів переходу.
 
 
Оператор циклу з передумовою в Паскале
Оператор циклу з передумовою реалізує наступну базову конструкцію:
 Формат запису:
 While L do OP;
 де: 
 While - поки не;
 do - виконати;
 L - вираз логічного типу;
 OP - тіло циклу; оператор (простий або складеного).
 
 
 
 Рис. 9.3. Структурна схема оператора циклу з передумовою
 
 Робота оператора: Обчислюється значення логічного вирази, якщо обчислена значення істинно, то виконується оператор OP після чого повторюється перевірка умови і виконання операторів тіла циклу. В іншому випадку здійснюється вихід з циклу.
Обчислення значення логічного виразу передує виконання операторів тіла циклу, тому цей оператор циклу називається циклом з передумовою.
 Приклад 9.3. Скласти програму обчислення функції y для заданого значення x.

 де: C=2,7; n=2; a=0.5 0;<t<1; Dt=0,1.
 Program Ex_2; 
 Uses crt;
 Var
 y, C, a, t :real;
 n :integer;
 Begin
 clrscr;
 Writeln("Уведіть C, a, n"); Read(C, a, n);
 Writeln("Підсумок:");
 Writeln("t’:5,’y’:15);
 t:=0;
 While t<1 do
 Begin
 y:=C*exp(a*t)*cos(n*t); 
 Writeln(t:4:1,’ ‘:5, y:10);
 t:=t+0.1;
 End;
 End.
 
 Оператор циклу з постумовою в мові Паскаль
Оператор циклу з постумовою реалізує наступну конструкцію:
 Формат запису:
  Repeat
  OP
  Until L;
 де: 
 Repeat - повторювати;
 Until - поки не;
 L - вираз логічного типу;
 OP - тіло циклу; оператор (простий або складеного).
 
 
 
Рис. 9.4. Структурна схема оператора циклу з постумовою
 
 
 Робота оператора: Виконується оператор OP після чого обчислюється значення логічного виразу L, якщо обчислена значення False, то знову виконується оператор OP іншому випадку здійснюється вихід з циклу.
 Обчислення значення логічного виразу слід після виконання операторів тіла циклу, тому цей оператор циклу називається циклом з постумовою.
 На відміну від циклу з передумовою, в циклі з постумовою тіло циклу виконується про крайней мере один раз не залежно від умови.
 оператора циклу з постумовою ключові слова Repeat і  Until грають роль операторних дужок.
 Приклад 9.4. Скласти програму обчислення функції y для заданого значення x.

 де: C=2,7; n=2; a=0.5 0;<t<1; Dt=0,1.
 Program Ex_2; 
 Uses crt;
 Var
 y, C, a, t :real;
 n :integer;
 Begin
 clrscr;
 Writeln("Уведіть C, a, n");
 Read(C, a, n);
 Writeln("Підсумок:"); Writeln("t’:5,’y’:15);
 t:=0;
 Repeat
 y:=C exp*(a*t)*cos(n*t); 
 Writeln(t:4:1,’ ‘:5, y:10);
 t:=t+0.1;
 Untile t>=1;
 End.
 
 
 Оператор циклу з параметром в мові Паскаль
Оператор циклу з параметром реалізує наступну базову конструкцію:

Рис. 9.5. Структурна схема оператора циклу з параметром.
 запису:
  1. For P:=Pn to Pk do OP;
  2. For P:=Pk downto Pn do OP;
пгде: 
For - для
to - до;
downto - зменшуючи до
- виконати;
OP - тіло циклу; оператор (простий або складеного);
P - параметр циклу, мінлива порядкового типу; 
Pn, Pk - початковий та кінцевий значення параметра.
 
 Робота оператора: Обчислюється початкове значення параметра циклу Pn і присвоюється параметру . Перевіряється умова ?Pk, і якщо воно True виконуються оператори тіла циклу OP . Після чого нарощується значення  на одиницю і знову перевіряється умова ?Pk . Якщо умова False здійснюється вихід з циклу.
пВ операторі з downto крок зміни параметра циклу дорівнює -1.
Приклади запису: 
For i:=1 n do to n:=sqr(i)+1;
 For s:=’A’ to ‘Z’ do R:=R+ord(s)/127;
 For L:=False to True do H:= (False or L) And Not (L);
Приклад 9.5. Скласти програму обчислення функції y для заданого значення n.

 де: C=2,7; a=0.5; t=0,1 0;<n<10; Dn=1.
 Program Ex_3; 
 Uses crt;
 Var
 y, C, a, t :real;
 n :integer;
 Begin
 clrscr;
 Writeln("Уведіть C, a, t");
 Read(C, a, n);
 Writeln("Підсумок:");
 Writeln(‘n’:5,’y’:15);
 For n:=1 to 10 do 
 Begin
 y:=C*exp(a*t)*cos(n*t); 
 Writeln(n:4,’ ‘:5, y:10);
 end;
 End.