Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
05 Алгоритмизация и программирование.doc
Скачиваний:
12
Добавлен:
04.09.2019
Размер:
1.28 Mб
Скачать

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

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

Циклический алгоритм содержит цикл – многократно выполняемые действия.

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

цикл

Циклические алгоритмы (повторение).

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

Примеры составления схем циклических алгоритмов.

Пример 5. Составить схему алгоритма вычисления значения функции

при

Р е ш е н и е. Сначала рассмотрим словесно-формульный способ записи, в котором порядок решения задачи можно представить в следующем виде:

1. 2. . 3. Вывод

4. 5. . 6. Вывод

7. 8. . 9. Вывод

10. Конец.

В этом алгоритме этапы вида 1-3 выполняются последовательно несколько раз (4-6; 7-9). Это и есть циклический алгоритм. Более компактную запись алгоритма можно получить, если ввести проверку условия <6. В этом случае

1. =2.

2. .

3. Вывод

4. Проверка <6,

если Да - перейти в п.5;

если Нет - перейти в п.7.

5. = +2.

6. Перейти в п.2.

7. Конец.

Описание алгоритма решения этой задачи графическим способом

представлено схемой алгоритма (рис.6), из

которой очевидно, что повторяемый участок

(цикл) состоит из блоков 3-6. Причем при

x=2

каждом изменении аргумента вычисляется

и выводится на печать искомая величина ,

z=ax2+bx+c

осуществляется проверка принадлежности

аргумента заданному диапазону и

изменяется значение аргумента, с

которым это новое значение аргумента

входит в новый цикл. Цикл выполнятся

три раза, то есть до тех пор пока

x=x+2

удовлетворяется условие, записанное

в блоке решения 5.

Этот алгоритм иногда называют

циклическим алгоритмом со счетчиком.

Здесь в в блоке 2 задается начальное

значение счетчика . В блоках 3, 4 значения

Рис.6 функции вычисляется и выводится на печать. В блоке 5 проверяется содержимое счетчика. В блоке 6 изменяется содержимое счетчика.

Составим для предыдущего примера схему алгоритма (рис.7), используя для его организации блочный символ-граница цикла.

В блоке 2 задается начальное

значения аргумента. Блоки 3,7

предназначены для организации

x=2

циклических программ и отоб-

ражают начало и конец цикла.

z=x2+bx+c

Внутри этих блоков записываются

параметр цикла ( в данном случае i )

и его значения. Блоки 4 - 6 входят

в циклическую конструкцию и все

x=x+2

вместе образуют тело цикла.

Цикл начинается при значении

параметра цикла i=1.

В блоках 4 и 5 вычисляется и

выводится на печать значения .

В блоке 6 аргумент получает значение

Рис.7 = +2=4. Параметр цикла i в блоке 7

получает значение 1 плюс значение шага 1, то есть i=2. Так как это значение параметра цикла не превосходит его конечного значения, равного 3 (блок 7), то выполняются вычисления в блоках, принадлежащих телу цикла. Выполняются действия в блоках 4, 5, в результате которых вычисляется и выводится на печать значение . В блоке 6 изменяется значение аргумента , который принимает значение =6. После этого параметр цикла i принимает значение i=3. Так как и это значение не превосходит конечного значения i, то опять выполняются блоки в теле цикла, а аргумент принимает значение 8. При этом параметр цикла i принимает значение 4. Так как это больше конечного значения i, то происходит выход из цикла и управление передается в блок 8, где и заканчивается вычислительный процесс.

Кроме рассмотренного простого циклического алгоритма (в котором один цикл) встречаются задачи, использующие несколько циклов, причем внутри одного могут находиться другие циклы. Алгоритм такой структуры называется алгоритмом со структурой вложенных циклов. Цикл, охватывающий другие циклы, называется внешним, а вложенные в него циклы - внутренними. Параметры этих циклов изменяются не одновременно, то есть для каждого значения параметра внешнего цикла параметр внутреннего цикла принимает последовательно все свои значения.

С хемы правильного и неправильного вложения циклов

Рассмотрим пример составления схемы алгоритма с использованием

вложенных циклов.

Пример 6. Вычислить сумму положительных элементов матрицы А, размером 5х5.

Р е ш е н и е. Схема алгоритма представлена на рис.8. Из схемы видно,

что после ввода элементов матрицы А, состоящей из

25 элементов (блок 2), необходимо «обнулить» нача-

льное значение ячейки S, в которую будет помещено

S=0

вычисленное значение суммы положительных элеме-

нтов матрицы. Далее открываются два цикла с пара-

метрами i и j. Причем цикл с параметром j является

внутренним. Тело цикла содержит два блока (6 и 7) -

блок решения (6), в котором осуществляется проверка

элементов матрицы А на положительность и блок

процесс, в котором суммируются найденные положи-

тельные элементы матрицы. Для каждого значения

S=S+A(I,J

параметра внешнего цикла i должны перебраться

все значения параметра j внутреннего цикла. Иначе

говоря, проверка элементов матрицы и суммиро-

вание положительных элементов будет осущест-

вляться по строкам. Переход к новой строке

будет происходить всякий раз как только проработает

цикл с значением параметра j равным пяти.

В блоке (10) выводиться значение полученной

суммы положительных элементов массива А.

Рис.8

Различают два типа структур цикла: цикл с параметром или с повторением и цикл с условием. Циклический алгоритм позволяет компактно описать большое число одинаковых вычислений над разными данными для получения необходимого результата.

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

зображен на рис. 6.

Циклы с условием используются тогда, когда число повторений заранее неизвестно, но задано условие окончания цикла. Причем, если условие окончания цикла проверяется перед выполнением тела цикла, то такие циклические структуры называют циклами с предусловием («Выполнять пока» рис. 4), а если проверка условия происходит после выполнения тела цикла – циклами с постусловием («Выполнять до тех пор пока не» рис.5).

Рис. 4

Рис. 5

Рис. 6

Управляющие структуры

Следование

Альтернатива, неполная альтернатива

Множественный выбор

Цикл с параметром

Цикл с предусловием

Цикл с постусловием

Каждая структура имеет единственный вход и единственный выход.