top of page

Циклические алгоритмы

      Алгоритм, который предусматривает многократное повторение одного и того же действия, называется циклическим. В отличие от линейных алгоритмов, в которых команды выполняются последовательно одна за другой, в циклические алгоритмы входит последовательность команд, выполняемая многократно. Такая последовательность команд называется телом цикла.
      Существуют три основных типа циклов – пока, до и для. Отличие первых двух циклов состоит в том, что в них количество повторений заранее определено. В первом случае, если препятствие никогда не встретится, движение будет продолжаться бесконечно долго. Такие явления при выполнении алгоритмов называются “зацикливанием”.
      Любой цикл состоит из нескольких этапов.

      Это: 
1.    Подготовка цикла, в которую входят начальные присвоения; 
2.    Тело цикла - команды повторения цикла; 
3.    Условие - обязательная часть циклов “До” и “Пока”. 
      Цикл называется арифметическим, если число повторений цикла известно заранее или может быть вычислено. 
Цикл, как и любая другая алгоритмическая структура, может быть:  
•    записан на естественном языке;
•    изображен в виде блок-схемы;
•    записан на алгоритмическом языке; 
•    закодирован на языке программирования.
Блок-схемы базовых структур


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

      Цикл, для которого нельзя указать число повторения, и проверка окончания которого происходят по достижению нужного условия, называется итерационным.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


      
 Алгоритм движения для трех типов циклов. 
Цикл ПОКА (число шагов не известно)
Пока нет препятствия
сделать шаг вперед
Завершить цикл;
Цикл ДО (число шагов неизвестно)
Сделать шаг вперед
до встречи с препятствием
Завершить цикл.
Цикл ДЛЯ (число шагов известно)
Для количества шагов менее 100
сделать шаг вперед
Завершить цикл.

 


      Задание № 1: Нужно исправить неверно составленный алгоритм:
       На перемене школьник зашел в столовую съесть пирожков, и некто посоветовал ему воспользоваться алгоритмом
1.    Пока не исчезнет чувство голода повторять:
2.    Купить пирожок
3.    Конец цикла
4.    Съесть пирожок.
       Какие строки алгоритма надо поменять местами, чтобы школьник ушел сытым?
Цикл ПОКА
пока <условие>
выполнять
 <тело цикла>
       Выполнение цикла ПОКА начинается с проверки условия его окончания. Эту разновидность цикла называют циклом с предусловием.
Если условие выполняется, то осуществляется изменение значений аргументов. В противном случае происходит выход из цикла. Может оказаться, что тело цикла не будет выполнено ни разу (если с самого начала условие не выполняется).
Цикл ДО
выполнять
<тело цикла >
до <условие>
      Условие выполнения цикла проверяется в конце выполнения тела цикла, то есть в любом случае тело цикла будет выполнено хотя бы один раз.
Цикл ДЛЯ
Повторять N  раз
 <тело цикла>
      При выполнении алгоритма последовательность команд в теле цикла повторяется указанное число раз. Правила алгоритмического языка допускают задание любого целого числа повторений. Оно может быть нулевым и даже отрицательным. Эти случаи не считаются ошибочными, просто тело цикла не будет выполнено ни разу, а компьютер сразу перейдет к выполнению команд, записанных после цикла.            Среди команд, составляющих тело цикла, могут быть и другие циклы. Программисты часто пользуются циклами, в том числе многократно вложенными.
Вложенные циклы:
Начало цикла 1
Начало цикла 2
Конец цикла 2
Начало цикла 3
... ... ...
Начало цикла N
Конец цикла N
Конец цикла 3
Конец цикла 1
Составление блок-схем.


     Задача № 1: Ученик в первый день выучил 5 английских слов. В каждый следующий день он выучивал на 2 слова больше, чем в предыдущий. Сколько английских слов выучит ученик в 10-ый день занятий? Составьте словесный алгоритм и блок-схему (тремя способами).
    Словесный:
Начало
1.    а=5 (считает слова)
2.    d=1 (считает дни)
3.    если D <= 10, то перейти к п. 4, иначе перейти к п.6
4.    а = а + 2
5.    d = d + 1
6.    вывод а
7.    конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

      Задача № 2. Составить блок-схемы для нахождения y=x2, для х=2, 4, 6, 8, 10.

      Задание для самостоятельной работы.


      Составить блок-схемы вычисления суммы N первых натуральных чисел (N=3).
 

bottom of page