Рейтинг@Mail.ru
   
   
   
   
Оглавление
1. История
2. Основные этапы процесса решения задачи на ПК
3. Понятие алгоритма. Сущность алгоритмизации
4. Свойства алгоритма
5. Средства описания алгоритма
6. Методы разработки алгоритмов
7. Правила оформления схем алгоритмов
8. Типовые структуры алгоритмов
Литература



8.3. Циклическая структура

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

  • циклы с известным заранее числом повторений (классические);
  • циклы с неизвестным числом повторений (итерационные).

Классический цикл организуется с помощью специальной переменной, которая называется параметром цикла.
Параметр цикла - это числовая переменная, которая управляет работой цикла. Она изменяется по закону арифметической прогрессии, что обеспечивает повторение цикла нужное количество раз. Для этого заранее должны быть известны:

начальное значение параметра (обозначим его   );

конечное значение параметра (обозначим его   );

  • шаг изменения параметра (обозначим его  ).

 

Зная эти 3 величины, можно вычислить количество повторений цикла по формуле:         

В этой формуле квадратные скобки обозначают, что после деления берется только целая часть числа (дробная часть всегда отбрасывается, а не округляется), т.к. количество повторений цикла - это целая величина.
Классический цикл имеет 4 части:

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

От взаимного расположения этих частей зависит вид типовой схемы одиночного цикла. На рис.9 представлен цикл типа "до" (с условием выхода из него), а на рис.10 - цикл типа "пока" (с условием повтора). Оба типа абсолютно равнозначны. На этапе алгоритмизации задачи безразлично, какой из них Вы выберете. Разница между ними обнаруживается только на этапе программирования, т.к. каждому типу цикла соответствуют разные циклические операторы.

Рис. 9.

Рис. 10.

Итерационный цикл отличается другой организацией. Подробно решение задач с помощью  итерационных циклов будет рассмотрено в ч.2 "Примеры построения алгоритмов". Там же будут рассмотрены так называемые вложенные циклы - т.е. циклы с несколькими параметрами.

ПРИМЕР 4. Построить таблицу значений функции  y = 2sin(x2-1)  на заданном интервале изменения аргумента.

Математическая постановка задачи. Введем недостающие обозначения:

(a,b) - интервал;

h - шаг изменения аргумента функции.

Все три величины являются исходными данными задачи. Результат задачи - значения функции, вычисляемые на каждом витке цикла.

Выбор метода решения задачи.  На каждом витке цикла будем выбирать точку (значение аргумента), вычислять в ней функцию и печатать оба значения в таблицу.

Разработка алгоритма.  В качестве параметра цикла удобно использовать сам аргумент функции, т.к. он изменяется на интервале (a,b) с постоянным шагом h (т.е. по закону арифметической прогрессии). Тогда начальным значением параметра будет число a, а конечным значением - число b. В теле цикла - 2 действия: вычисление функции и печать. Схема алгоритма решения задачи приведена на рис. 12.
Определим части цикла на схеме:

  • подготовка цикла - блок 3,
  • изменение параметра - блок 6,
  • условие выхода из цикла - блок 7.
  • тело цикла легче всего определять в последнюю очередь (это повторяющиеся в цикле действия, которые не касаются организации цикла). В этом алгоритме тело цикла составляют блоки 4, 5.

Знать принципы организации циклического алгоритма и уметь определять части цикла на схеме (даже "незнакомой" задачи) очень полезно. Это значительно облегчит Вам в дальнейшем процесс программирования алгоритма. Как правило, части цикла, касающиеся его организации (связанные с параметром цикла), описываются во всех языках программирования специальными операторами организации цикла. А действия, составляющие тело цикла, выделяются в отдельную группу операторов. Так что Вы сможете избежать ошибок программирования, если сейчас научитесь определять тело цикла на схеме алгоритма.

Для обозначения циклического процесса есть специальный блок - это символ "подготовка".

Внутри блока указываются параметр цикла, его начальное и конечное значения и шаг изменения в виде 

.

Тело цикла обычно располагается ниже и более четко просматривается на схеме.

На рис.11 приведена типовая схема организации одиночного цикла с помощью блока "подготовка".

Рис. 11

На рис.13 приведена схема решения задачи табулирования функции с помощью блока "подготовка". Сравните с предыдущей, "развернутой" схемой (рис.12).

Рис. 12

Рис. 13

Тело цикла на этой схеме составляют блоки 4, 5.

Количество повторений цикла (оно определяет количество строк в таблице значений функции) вычислим по формуле

  после задания конкретных значений исходных данных.

Конечно, использование символа "подготовка" значительно сокращает размер циклической схемы и упрощает ее восприятие, но говорить о преимуществе того или иного варианта схемы не стоит, иногда при программировании более полезным оказывается именно "развернутый" вариант схемы. Все зависит от того, какими операторами описания цикла будет реализована конкретная схема.

в начало



http://vinogradonline.ru/ob/1188

Клуб на Миллион в месяц (СТАРТ)



Главная Windows 7 Windows XP Word 2003 Word 2007 Excel 2003 Excel 2007 Алгоритмы Статистика Принцип Парето Цифровые системы
управления

Copyright © 2008-2017
Ющик Е.В. e-mail: veta@comp5.ru

All Rights Reserved

Рейтинг@Mail.ru

Реклама: