Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие студентам.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
4.13 Mб
Скачать

4.4.7.Программирование алгоритмов циклической структуры

Для выполнения повторяющихся действий в программе в Visual Basic применяются операторы цикла. К ним относятся:

        • Цикл со счетчиком.

        • Условный оператор цикла.

        • Перечислимый оператор цикла.

Цикл со счетчиком называют также циклом For. Синтаксис цикла имеет следующий вид:

For i=1 To N Step M

<Блок операторов>

Next i

Блок операторов будет выполнен столько раз, сколько значений примет счетчик цикла i, который изменяется в приведенном примере от единицы до величины N с шагом M.

Условные операторы цикла применяются в двух формах: Do While и Do Until.

Цикл Do While выполняется до тех пор, пока условие истинно и в зависимости от расположения условия имеет две формы: с проверкой условия до выполнения тела цикла и с проверкой условия после выполнения тела цикла.

Синтаксис первой формы имеет вид:

Do While <условие>

<блок операторов >

Loop

В этом цикле сначала проверяется условие на истинность, а потом выполняется блок операторов.

Синтаксис второй формы имеет вид:

Do

<блок операторов >

Loop While <условие>

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

Цикл Do Until выполняется до тех пор, пока условие ложно. Этот цикл также имеет две формы:

Do Until <условие>

<блок операторов >

Loop

и

Do

<блок операторов >

Loop Until <условие>

Перечислимый цикл начинается с ключевых слов For Each. Этот цикл используется для обработки элементов массива или некоторого набора объектов. Синтаксис этой формы цикла показан на примере обработки элементов массива:

Dim Number As Variant

Dim Massiv As Variant

Massiv=Array(3,7,5,9,8,2,4,9)

For Each Number In Massiv

If Number>5 Then TextBox.Text=Numder

Next Number

В этом фрагменте сначала создается массив Massiv, содержащий 8 элементов. Цикл For Each перебирает элементы массива и поочередно выводит в текстовом окне значения, превышающие число 5.

4.4.8.Отладка программ

При разработке программы необходимо регулярно тестировать ее на предмет наличия в ней ошибок.

Если требуется отладить запущенную программу, необходимо прервать ее выполнение, нажав комбинацию клавиш <Ctrl> <Break>. Выполнение программы будет приостановлено, но не завершено. При этом программа переходит в режим останова, в котором можно просматривать значения переменных и изменять их с помощью диалогового окна Immediate.

В режиме останова для отладки программы предусмотрено ее пошаговое выполнение. Для этого на панели инструментов Debug необходимо нажать одну из кнопок:

    • Step Over – программа пошагово проходит все операторы текущей процедуры. При этом все вызываемые процедуры не трассируются. Режим можно включить с помощью комбинации клавиш <Shift> <F8> .

    • Step Into – программа пошагово проходит все операторы текущей процедуры. При этом все вызываемые процедуры трассируются. Режим можно включить с помощью клавиши <F8> .

    • Step Out – программа выполняется до выхода из текущей процедуры. Режим можно включить с помощью комбинации клавиш <Ctrl> <Shift> <F8>

Когда программа находится в режиме останова можно выполнить любой оператор, используя диалоговое окно Immediate. Для выполнения оператора его нужно ввести в диалоговое окно и запустить программу, нажав клавишу <F5>.

Диалоговое окно Immediate используется также для отображения значений переменных. Для этого нужно в окне кода подвести указатель мыши к некоторой переменной и ее значение появится в окне всплывающей подсказки.

Для отслеживания значений переменных еще используется диалоговое окно Watches. Чтобы поместить в это окно переменную, необходимо в окне кода кликнуть на ней правой кнопкой мыши и в появившемся контекстном меню выбрать команду Add Watch. После нажатия кнопки Ok в окне Watches появляется строка с именем переменной. Нажимая на клавишу <F8>, можно в окне Watches наблюдать значение этой переменной.

.