СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP

ЦИКЛЫ

Цикл – это алгоритмическая структура, при помощи которой реализуется многократное повторение блоков операторов.

В языке Visual Basic существует четыре основных вида циклов, которые реализуется при помощи конструкций:

1) FOR … NEXT

2) DO … LOOP

WHILE… WEND

4) с помощью операторов условного перехода.

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru 1. Циклы с параметром FOR … NEXT

Данный оператор имеет следующий формат:

For<параметр>=<выражение1> To<выражение2> [Step<шаг>]

<операторы>

Next [<параметр>]

Пример:

For i = 1 TO 10 STEP 2

<операторы>

Next i

Конструкция FOR… NEXT используется, когда мы знаем, сколько раз нужно выполнить какое-либо действие.

Выполнение оператора цикла с параметром может быть прервано с помощью оператора, предназначенного для преждевременного выхода из цикла EXIT FOR, который передает управление на следующий оператор, расположенный после цикла, например: If i =с Then Exit For

Пример. Пусть требуется написать программу, вычисляющую значения функции на промежутке [a,b] c шагом h, и вывести результаты.

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

При вычислении функции, ее значения вычисляются в теле цикла на каждом шаге, следовательно, вычисленных значений функции будет какое-то множество.

Вывод нескольких значений функции может быть осуществлен следующими способами:

1) в текстовое окно TextBox, при условии, что установлено свойство MultiLine = Trueдля данного текстового окна;

2) в список (элемент управления ListBox);

3) в элемент управления DataGridView;

4) в текстовый файл;

Рассмотрим первые 2 способа.

Блок-схема решения задачи:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Вариант 1. Составим программу для решения данной задачи, которая будет осуществлять вывод аргумента функции x и ее значения y в текстовые окна TextBox:

Форма будет иметь вид:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Внимание! Для объектов TextBox4и TextBox5сделать большие окна и установить для них свойство MultiLineв положение True.

Программный код приложения:

Vb Carriage Retern Left – возврат каретки (переход на новую строку)
Перед циклом производится очистка текстовых окон
СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Вариант 2. Теперь напишем программу, использующую для вывода аргументов и значений функций списки. Форма будет аналогична предыдущей, но вместо текстовых окон TextBox4 и TextBox5 будет содержать списки ListBox1 и ListBox2.

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Для добавления элементов списка используется метод ListBox1.Items.Add(CStr(x)).

Программный код приложения:

Для добавления элементов в список используется метод Add коллекции Items элемента управления ListBox. Добавляемый элемент должен иметь тип String
СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru 2. Циклы с предусловием

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

В языке Visual Basic цикл с предварительным условием может быть организован четырьмя способами:

1) с помощью операторов цикла DO WHILE …LOOP,

2) с помощью операторов цикла DO UNTIL…LOOP,

3) с помощью операторов цикла WHILE…WEND,

4) с помощью операторов условного и безусловного перехода.

Оператор WHILE…WENDполностью соответствует оператору DO WHILE … LOOP,за исключением ключевых слов.

Рассмотрим основные форматы перечисленных выше операторов.

 
  СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP

имеет следующий формат:

DO WHILE<условие>

<тело цикла>

LOOP

Конструкция DO WHILE … LOOP означает: выполнять какое-либо действие до тех пор, пока условие истинно:

Do While MyVar < 10

MyVar = MyVar + 1

MsgBox “ MyVar = “ & MyVar

Loop

Пример. Пусть требуется написать программу, вычисляющую значения функции на промежутке [a,b] c шагом h.

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Переменной – параметру цикла должно быть присвоено значение до начала работы цикла. Данная переменная должна изменять свое значение (в большую или меньшую сторону, в зависимости от условия), чтобы не произошло «зацикливание» программы.

Блок-схема решения задачи:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

В представленной блок-схеме жирным подчеркнутым курсивом отмечены блоки, отвечающие за организацию цикла с предусловием.

Форма со списками

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Программный код решения задачи:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 2. ОПЕРАТОР ЦИКЛА DO UNTIL… LOOP

имеет следующий формат:

DO UNTIL<условие>

<тело цикла>

LOOP

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

Do Until MyVar >= 10

MyVar = MyVar + 1

MsgBox “ MyVar = “ & MyVar

Loop

Решим предыдущую задачу с применением оператора DO UNTIL… LOOP

Блок-схема и рисунок формы – те же самые.

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru 3. Циклы с постусловием

Циклы с постусловием применяются тогда, когда число повторений цикла заранее неизвестно и определяется в процессе реализации циклического алгоритма.

Цикл с постусловием может быть организован тремя способами:

1) с помощью операторов DO… LOOP WHILE,

2) с помощью операторов DO… LOOP UNTIL,

3) с помощью операторов условного и безусловного перехода.

 
  СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO… LOOP WHILE

имеет следующий формат:

DO

<тело цикла>

LOOP WHILE<условие>

Эта конструкция цикла тестирует свое условие после выполнения цикла и означает, что тело цикла будет точно выполнено хотя бы один раз:

Do

MyVar = MyVar + 1

MsgBox “ MyVar = “ & MyVar

Loop While MyVar < 10

Пример. Рассмотрим программу, вычисляющую значения функции на промежутке [a,b] c шагом h. Пусть функция имеет следующий вид:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Форма приложения:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Блок-схема алгоритма

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

В приведенной блок-схеме подчеркнутым курсивом отмечены блоки, отвечающие за организацию цикла с постусловием.

Программный код решения задачи:

СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

 
  СПОСОБ 1. ОПЕРАТОР ЦИКЛА DO WHILE … LOOP - student2.ru

Наши рекомендации