И так не много общей теории:
Последовательность инструкций, предназначенная для многократного исполнения, называется телом цикла. Единичное выполнение тела цикла называется итерацией. Выражение определяющее, будет в очередной раз выполняться итерация, или цикл завершится, называется условием выхода или условием окончания цикла (либо условием продолжения в зависимости от того, как интерпретируется его истинность — как признак необходимости завершения или продолжения цикла). Переменная, хранящая текущий номер итерации, называется счётчиком итераций цикла или просто счётчиком цикла.
Цикл не обязательно содержит счётчик, счётчик не обязан быть один —
условие выхода из цикла может зависеть от нескольких изменяемых в цикле
переменных, а может определяться внешними условиями (например,
наступлением определённого времени), в последнем случае счётчик может
вообще не понадобиться.
Исполнение любого цикла включает первоначальную инициализацию
переменных цикла, проверку условия выхода, исполнение тела цикла и
обновление переменной цикла на каждой итерации. Кроме того большинство
языков программирования предоставляют средства для досрочного
завершения цикла, то есть выхода из цикла независимо от истинности
условия выхода.
Узнать о циклах подробней
Рассмотрим цикл Do...Loop. В Bascom avr это цикл используется чаще всего. Опишем действия цикла. Операторы цикла Do и Loop
устанавливают необходимость безусловного выполнения операторов,
расположенных между ними. Прекращение цикла происходит только при
выполнение условий, заданных с помощью слова Until. Если вы не хотите чтоб цикл завершал свою роботу, а повтарялся снова и снова, то просто опускаем слово Until. Из цикла также можно выйти, с помощью операторов Goto или Exit.
Теперь о синтаксисе.
Do
' Тело цикла
Loop [ Until expression ]
Expression - выражение условия прекращения цикла. Из цикла можно также выйти, применив в теле циклической программы директиву Exit Do или оператор Goto.
Привиду два примеру. В одном бесконечное марганием светодиодом без
выхода из цикла, в другом выход из цикла при достижение перемнной,
определённого значения в условии Until.
Пример №1.
Do
Led = 1 : waitms 250
Led = 0 : waitms 250
Loop
Пример №2.
Dim Q As Integer
Q = 0
Do 'начало цикла Q = Q + 1 'действие внутри цикла
Loop Until Q = 5 'повторять пока значение Q не будет равно 5, затем выходи из цикла
Print Q 'выводим полученное значение в терминале
Далее цикл While...Wend. Конструкция в виде цикла, выполняемого,
пока некотрые условия выполняются. Как только заданное условие
нарушается, то выполняется оператор (действие) следующий за оператором Wend. Данная конструкция цикла обратна конструкции Do ... Loop Until.
Синтаксис.
While condition
Condition - условие повторения цикла.
Пример для данного цикла.
Dim Q as Integer
Q = 0
While Q <= 5 'цикл будет повторяться, пока Q не достигнет 6
Print Q
Wend
И последний цикл For. И так действие данного цикла, выполняет некотрые действия заданное число раз. Основой управления конструкцией FOR...NEXT служит изменение указанной переменной от начального до конечного значения.
Синтаксис конструкции:
For var = start To end [Step value]
'Повторяемый блок
Next
var - переменная, start - начальное значение переменной, end - конечное
значение переменной, value - значения шага изменения переменной.
Изначально шаг идёт уже как 1, поэтому step 1 ставить не обязательно.
Переменная может уменьшаться в зависимости от шага. Если число в шаге
положительно, значит переменная увеличивается, отрицательное переменная
уменьшается.
Пример:
Dim I as Integer
Do
For I = 0 To 150
Servo(1) = I : Waitms 15
Next
Loop
Ну вот о циклах вроде всё. |