назад | содержание | вперед

Цикл с использованием конструкции For...Next

Конструкция For...Next выполняет последовательность команд определенное число раз. Такую конструкцию называют циклом, а выполняемые ею программные коды — телом цикла.

Синтаксис конструкции For.. .Next следующий:

For счетчик = начЗначение То конЗначение [Step шаг]

конструкции

Next[счетчик]

Первый аргумент конструкции — счетчик — определяет имя переменной, которая будет "считать" количество выполнении цикла. Параметр начЗначение указывает числовое значение, которое присваивается переменной-счетчику перед первым проходом цикла. Цикл выполняется до тех пор, пока значение счетчика не превысит конечного значения, указанного после ключевого слова то. После каждого прохода цикла значение счетчика изменяется на величину шаг, указанную за ключевым словом step. Ключевое слово Next обозначает конец тела цикла и является обязательным.

Перед каждым проходом цикла Visual Basic сравнивает значения счетчика и аргумента конЗначение. Если значение счетчика не превышает установленного значения конЗначение, выполняются конструкции тела цикла. В противном случае управление переходит к следующей за Next конструкции. Например:

For nCountVar = 1 То 10 Step 2

nNextWeek(nCountVar) = nCountVar * 2

Next

Здесь цикл выполняется пять раз при значениях счетчика nCountVar 1, 3, 5, 7 и 9. Обратите внимание, что переменная-счетчик используется в теле цикла в качестве обычной переменной.

Шаг изменения счетчика может быть отрицательным. Например:

For nCounter = 100 То 1 Step -10

nDecades(nCounter) = nCounter *2

Next

В этом случае цикл будет выполняться до тех пор, пока nCountVar больше 1. Если значение шага цикла отрицательно, то начальное значение счетчика должно быть больше конечного.

Ключевое слово step можно опустить. В этом случае значение шага по умолчанию принимается равным 1.

Возможны ситуации, при которых выполнение цикла невозможно или, наоборот, его выполнение становится бесконечным. Например:

* Невыполняемый цикл: начальное значение счетчика

* больше конечного при положительном шаге цикла

For nCounter=100 To 1

nDecades (nCounter) = nCounter

Next

* Бесконечный цикл: значение счетчика

* изменяется в теле цикла и никогда не превысит 10 For nCounter = 1 То 10

nCounter = 1

Next

 

назад | содержание | вперед