Циклические алгоритмы. Команда повторения.
1. Алгоритм - понятное и точное предписание исполнителю выполнить коночную последовательность команд, приводящую от исходных данных к искомому результату.
Всякий алгоритм составляется из простых команд, команд- обращений к вспомогательным алгоритмам и структурных команд. К “ структурным “ относятся команда ветвления и команда цикла.
Цикл-это команда исполнителю многократно повторить указанную последовательность команд.
Однако слово “ многократно” не значит “до бесконечности”. Организация циклов, никогда не приводящая к остановке в выполнении алгоритма, является нарушением требования его результативности- получения результата за конечное число шагов.
Рассмотрим графическое представления циклического алгоритма. В него входят в качестве базовых следующие структуры: блок проверки условия P и блок S, называемый телом цикла, Если тело цикла S расположено после проверки условий P (цикл с предусловием). То может случится, что при определенных условиях блок S не выполнится ни разу. Такой вариант организации цикла, управляемый предусловием, называется цикл - пока.
Пока P повторить
S
Конец цикла
Если условие P не выполняется, то происходит выход из цикла на команду, записанную после строки “конец цикла “, Здесь условие P – это условие на продолжение цикла.
Возможен другой случай, когда тело цикла S
Выполняется по крайней один раз и будет
повторятся до тех пор, пока не станет истинным
условие P.такая организация цикла, когда его
тело расположено перед проверкой условия P,
носит название цикла с постусловием, или
цикла – до. Истинность условия P в этом случае- условие окончания цикла.
Отметим, что возможна ситуация с постусловием и при организации цикла –пока. Итак, цикла –до завершается, когда условие P становится истинным, а цикл –пока –когда P становился ложным. Другими словами, цикл-до выполнятся ”до” истинности условия, а цикл – пока выполняется, указанное логическое выражение остается истинным. Современные языки программирования имеют достаточный набор операторов, реализующих как цикл-пока, так и цикл – до.
Отметим основное отличительное свойство циклических алгоритмов; количество действий, исполняемы в процессе работы такого алгоритма, может существенно повышать количество команд, составляющих тело цикла.
В блок - схемах алгоритмов (графическом представление алгоритмов) и на учебном алгоритмическом языке цикла пока представляется так:
|
|
|
|
Пример.
|
Функции y=tg x на отрезке [A, B] с шагом
|
Дано: A- начальное значение аргумента,
|
H- шаг изменения аргумента.
Найти: Y- значение функции.
Связь: y= t g x, где x= a, a+ h, …, B.
Здесь тело цикла состоит из двух команд: вычисление у и печать значения аргумента х и соответствующего ему значения функции у.
Команда x= x+ h осуществляется переход к следующему значению аргумента х. Проверка условий, стоящая после выполнения цикла (X> b), показывает, что это цикл – до.
Билет17
Вопрос 1