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



Например:

Option Base 0 'установка по умолчанию с нуля

Option Base 1 'индексы массивов начинаются с 1

Пример 11. Создать программу, организующую три двумерных массива. Первые два массива определены поэлементно в программе. Третий массив А организуется путем суммирования соответствующих членов массивов В и С (рис. 24).

Результаты организации массивов выведены в соответствующие метки на форме после нажатия на кнопку Массив.

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

Private Sub CommandButton1_Click()

Dim B(1 To 2, 1 To 2) As Integer

Dim c(1 To 2, 1 To 2) As Integer

Dim A(1 To 2, 1 To 2) As Integer

B(1, 1) = 5

B(1, 2) = 4

B(2, 1) = 8

B(2, 2) = 10

c(1, 1) = 0

c(1, 2) = 1

c(2, 1) = 5

c(2, 2) = 10

For i = 1 To 2

For j = 1 To 2

A(i, j) = B(i, j) + c(i, j)

Next j

Next i

Label1.Caption = «a(1,1)=» & A(1, 1) & « a(1,2)=» & A(1, 2)& « a(2,1)=» & A(2, 1) & « a(2,2)=» & A(2, 2) Label2.Caption = «b(1,1)=» & B(1, 1) & « b(1,2)=» & B(1, 2) & « b(2,1)=» & B(2, 1) & « b(2,2)=» & B(2, 2)

Label3.Caption = «c(1,1)=» & c(1, 1) & « c(1,2)=» & c(1, 2) & « c(2,1)=» & c(2, 1) & « c(2,2)=» & c(2, 2)

End Sub

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


Пример 12. Создать программу, создающую два двумерных массива: один массив вводом числовых элементов в соответствующие текстовые поля формы, второй – вводом четырех произвольных фамилий в соответствующие текстовые поля формы (рис. 25, 26). В результате все элементы первого массива увеличиваются на 10 и выводятся в соответствующую метку на форме. Элементы же второго строкового массива организуют вывод предложений типа: работник фамилия Иванов, где Иванов (например) берется из строкового массива, введенного в соответствующие текстовые поля. Данные результаты получаются после нажатия на кнопку Вывод пользовательского диалогового окна.


Рис. 25. Форма примера 12 в режиме конструктора


Рис. 26. Форма примера 12 в рабочем режиме


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

Private Sub CommandButton1_Click()

Dim B(1 To 2, 1 To 2) As String

Dim c(1 To 2, 1 To 2) As String

Dim A(1 To 2, 1 To 2) As String

Dim d(1 To 2, 1 To 2) As Integer

Dim k(1 To 2, 1 To 2) As Integer

B(1, 1) = TextBox5.Text

B(1, 2) = TextBox6.Text

B(2, 1) = TextBox7.Text

B(2, 2) = TextBox8.Text

d(1, 1) = Val(TextBox1.Text)

d(1, 2) = Val(TextBox2.Text)

d(2, 1) = Val(TextBox3.Text)

d(2, 2) = Val(TextBox4.Text)

For i = 1 To 2

For j = 1 To 2

k(i, j) = d(i, j) + 10

Next j

Next i

For i = 1 To 2

For j = 1 To 2

c(i, j) = «фамилия» + B(i, j)

Next j

Next i

For i = 1 To 2