Итерационные циклы
Чем отличаются итерационные циклы от цикла с параметром? Вспомним определения цикла с параметром: Это цикл в котором серия команд выполняется заданное число раз.
Особенность итерационного цикла в том, что число повторений тела цикла неизвестно. Возникает вопрос???? А когда выходить из цикла? На каждом шаге вычислений происходит последовательное приближение и проверка условия достижения искомого результата. Другими словами буду находиться в цикле пока не будет достигнуто условие. Поэтому подобные циклы имеют название – цикл «Пока»
Определение: Алгоритм, в состав которого входит итерационный цикл (пока), называется итерационным алгоритмом. ВАЖНО!!! В итерационных алгоритмах необходимо обеспечить обязательное достижение условия выхода из цикла. В противном случае произойдет зацикливание алгоритма, т.е. не будет выполняться основное свойство алгоритма – результативность.
Итерационные циклы бывают: с постусловием и предусловием. Цикл с постусловием Цикл с предусловием Действие 1 Действие 2 условие - Выход + условие Действие 1 Действие 2 выход + -
Для лучшего понимания назовем один цикл «Обжора», а другой «Транжира» Обжора кушает Все съел? - наелся + Пришел обжора на вечеринку Какой это цикл? Деньги есть? Играю в рулетку Играю в карты + - Пришел транжира в казино Банкрот Какой это цикл?
Сравнение циклов: Условие находится после серии команд. Тело цикла выполняется 1 раз обязательно. Условие находится перед серией команд. Тело цикла может не выполниться ни разу Цикл «Пока» похож на ветвление, но в ветвлении веточки сходятся, в цикле нет. Условие влияет на выход из цикла. ПостусловиеПредусловие
Синтаксис циклов DO (делай) < тело цикла > LOOP UNTIL DO WHILE LOOP WHILE WEND
Где используются эти циклы? Постусловие Замок на ввод данных Ввод a0 A=0 - DO INPUT «Введи а»; а LOOP Until a=0 +
Определить значение переменной S после выполнения следующих операторов S=0 I=1 Do S=S+5 I=I-1 LOOP UNTIL I
Предусловие Дана последовательность 5,9,13,17… Составить программу, определяющую, сколько слагаемых надо взять, чтобы получить сумму равную 324
Решаем задачу: Что дано: начальное значение а=5 Шаг В=4 Номер элемента I=1 Начальное значение суммы S=A Найти I, при котором сумма будет равно 324
начало A=5 B=4 I=1 S=A S324 I=I+1 A=A+B S=S+A I конец +
CLS A=5 B=4 I=1 S=A DO WHILE S
Домашнее задание: Дан ряд чисел: 2, 4, 6, 8……20. Найти сумму ряда, используя итерационные циклы (2 способа: с пост условием и предусловием)