Циклічні алгоритми

Циклічні алгоритми

При розв’язуванні багатьох задач доводиться багато разів обчислювати одні і тіж вирази для різних значень змінних величин або повторювати ідентичні дії. При цьому будують циклічний алгоритм.

Цикл (вказівка повторення) - це алгоритмічна конструкція, за допомогою якої деяка серія операторів повторюється деяку кількість разів для різних значень величин, що є в циклі.

Кількість повторень у циклі повинна бути скінченною. Розрізняють цикли, де ця кількість відома заздалегідь (безумовний цик для) та де вона не відома (цикл х передумовою). Кількість кроків циклу при цьому залежить від виконання або не виконання деякої умови, яка перевіряється на кожному кроці циклу.

цикл з передумовою - коли ми спочатку перевіряємо умову, а потім виконуємо деяку послідовність дій;

цикл с післяумовою - спочатку ми виконуємо хоч один раз необхідну послідовність дій, а потім перевіряємо, чи не досягли ми бажаного результату.

Мовою блок-схем обидва типи циклів виглядають наступним чином:

Задача 1 Знайти суму перших n натуральних чисел.

алг Сума (нат n нат S)
  арг  n
  рез  S
поч нат i
s:=0
для i:=1 до n роби
 пц
   s:=s+i;
 кц
кін

В даній задачі використовується безумовний цикл (ми наперед знаємо кількість повторень - n-раз). Для організації циклів такого типу, використовують цілочислельну змінну цілого типу, яку називають лічильник циклу. Змінювати самостійно значення лічильника на протязі виконання циклу не можна. Але його значення часто використовують в середині (в тілі) циклу.

Задача 2 Знайти середнє арифметичне пeрших n натуральних чисел.

алг САР (нат n дійсн Sa)
  арг  n
  рез  Sa
поч нат i дійсн S
s:=0
для i:=1 до n роби
 пц
   s:=s+i;
 кц
Sa:=s/n
кін