Офисное программирование | страница 22




Рис. 21. Форма примера 7 в режиме конструктора и в рабочем состоянии


Листинг примера 7

Dim a As Variant

Dim b As Integer

Dim c As Integer

Private Sub CommandButton1_Click()

a = Val(TextBox1.Text)

For i = 1 To 12 Step 5

b = a + i

c = a + b

Next i

Label1.Caption = a & "+" & b & "=" & c

End Sub

Пример 8. Создать программу, которая выполняет следующие действия: организованный цикл for each присваивает переменной b, объявленной в программе, последнее значение массива, также определенного программой. После этого происходят вычисления, предложенные в программе:

в метку label2 выдается результат увеличения полученной переменной на значение первого элемента массива;

в метку label3 выдается результат увеличения полученной суммы на значение второго элемента массива;

в метку label4 выдается результат увеличения полученной суммы на значение третьего элемента массива;

в метку label6 выдается результат увеличения полученной суммы на значение последнего элемента массива.

Результат выдается для наглядности в различные метки на форме (рис. 22).


Рис. 22. Форма примера 8 в режиме конструктора и в рабочем состоянии


Листинг примера 8

Dim b As Variant

Private Sub CommandButton1_Click()

Dim d(1 To 4) As Variant

d(1) = 15

d(2) = 0

d(3) = -10

d(4) = 25

For Each b In d

b = d(1) + b

Label2.Caption = «d(1)=» & d(1) & « b=» & b

b = d(2) + b

Label3.Caption = « d(2)=» & d(2) & « b=» & b

b = d(3) + b

Label4.Caption = « d(3)=» & d(3) & « b=» & b

b = d(4) + b

Label6.Caption = « d(4)=» & d(4) & « b=» & b

Next b

End Sub

Примечание. Как говорилось выше, For Each … Next не использует счетчик цикла. Циклы For Each … Next выполняются столько раз, сколько имеется элементов в определенной группе, такой как коллекция объектов или массив. Другими словами, цикл For Each … Next выполняется один раз для каждого элемента в группе. Вследствие чего данный цикл используется в основном в специфических действиях, таких как поиск необходимого листа в коллекции объектов и т. д., и не используется при решении простых задач.

Задачи на закрепление материала

Пример 9. Создать программу, которая, используя данные, считанные из текстовых полей формы, после нажатия на кнопку выводит сообщение:

«Здравствуй, введенное имя, студент группы номер группы специальности название специальности!»,

где введенное имя – значение из первого текстового поля;

номер группы – значение из второго текстового поля;

название специальности – значение из третьего текстового поля.