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

9.4.3.7. Процедуры ввода-вывода через диалоговые окна

В сокращенном варианте инструкции ввода-вывода имеют вид:

InputBox(<”сообщение”>)

MsgBox(<“сообщение”>)

Пример:

Sub Krb()

Dim S As Integer

Dim Sum As Single

Dim P As Integer

Dim Prom As Variant

S = 5000

Do

Prom = InputBox(“Введите значение P=”)

IF Not IsNumeric(Prom) Then MsgBox(“Повторите ввод!”)

Loop Until IsNumeric(Prom)

P = Prom

Sum = S + S*0.01*P

MsgBox(“Результат S = ”) & CSng(Sum

End Sub

Вопросы для самоконтроля

  1. Что понимается под параметрами-переменными и параметрами-значениями?

  2. Какое различие между понятиями “формальные” и “фактические” параметры?

  3. Способы передачи параметров-переменных и параметров значений.

  4. Могут ли быть разными имена формальных и фактических параметров?

  5. В какой последовательности должны располагаться имена параметров в операторах вызова процедуры и функции?

6. Способы вызова процедуры.

9.4.3.8. Массивы

Массив – набор однотипных переменных с одним именем, каждая из которых называется элементом массива и имеет свой номер (индекс).

Массивы могут быть: одномерные (для нумерации элементов используется один индекс), двумерные (для нумерации элементов используются два индекса: номер строки, номер столбца) и N-мерные. Число измерений может достигать 60.

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

9.3.8.1. Статические массивы

Статическим называется массив с заранее известным количеством элементов.

Синтаксис описания (объявления) статического массива:

Dim <Имя массива>(<верхняя граница>) As <Тип>

По умолчанию нижняя граница равна 0.

Dim <Имя массива>(<Нижняя граница> To <Верхняя граница>) As <Тип>

Примеры:

Dim a(10) As SingleОдномерный массив с начальной границей, равной 0.

Dim S(3 To 5) As StringОдномерный массив с явными границами.

Dim Z(1 To 3, 1 To 5) As Byte ‘Двумерный массив.

Для задания по умолчанию нижней границы массива, равной 1, используется команда Option Base 1, которая вводится в начале модуля.

Примеры:

Option Base 1

---------------------------------------------------------------------------------------------

Sub Mas1()

Dim a(5) As Integer

Dim i As Integer, k As Integer

WorkSheets(“Лист1”).Select ‘Выбрать Лист1 из семейства листов.

Cells.Clear ‘Очистить ячейки рабочего листа.

K = 2

For i =1 To 5

a(i) = Int(Rnd(i)*100) ‘Формирование массива a(i).

Cells(k , i + 1) = a(i) ‘Вывод массива a(i) на рабочий лист.

Next i

End Sub

Sub Mas2()

Dim a(1 to 5) As Integer, k As Integer

Dim i As Integer

WorkSheets(“Лист1”).Select

Cells.Clear

K = 2

For i = 1 To 5 ‘Формирование массива a(i).

a(i) = Int(Rnd(i)*100)

Next i

Fori=1To5 ‘Вывод массива a(i) на рабочий лист.

Cells(k , i + 1) = a(i)

Next i

End Sub

Sub Dmas1()

Dim i As Integer

Dim j As Integer

Dim a2(1 to 3, 1 to 5) As Integer

WorkSheets(“Лист1”).Select

Cells.Clear

For i =1 To 3 Формирование массива a2(i , j).

For j =1 To 5

a2(i , j) = Int(Rnd(i*j)*100)

Next j

Next i

For i = 1 To 3 Вывод массива a2(i , j) на рабочий лист.

For j = 1 To 5

Cells(i + 1 , j + 1) = a2(i , j)

Next j

Next i

End Sub

Sub Dmas2()

Dim a(1 to 5) As Integer, k As Integer

Dim i As Integer, prom As Variant

WorkSheets(“Лист1”).Select

Cells.Clear

K= 2

Fori=1To5 ‘Ввод элементов массива с клавиатуры.

Do

Prom = InputBox(“Введите элемент a(“& CInt(i) & “) =”)