Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
voprosy_otvety_na_ekzamen (2).docx
Скачиваний:
11
Добавлен:
22.09.2019
Размер:
404.77 Кб
Скачать

57.Системная функция: InputBox. Пример.

Функция InputBox используется для ввода данных пользователем через системное окно.

Синтаксис функции следующий:

InputBox (Приглашение [, Заголовок] [,НачЗначение])

Приглашение – любой текст, который находится в Окне ввода и служит для подсказки.

Заголовок – необязательная надпись в строке заголовка.

НачЗначение – это значение, которое будет введено автоматически, если пользователь с этим согласен.

Возвращаемым значением данной функции является информация вводимая пользователем. VB автоматически приписывает этой информации тип String. В программе функция InputBox может входить в состав выражения, значение которого присваивается переменной. При обращении к функции, на экране появляется Окно ввода.

После щелчка по кнопке ОК происходит присваивание и окно ввода исчезает.

Окно ввода Результат

Текст модуля:

Private Sub CommandButton1_Click()

Dim Fam, Im, Ot As String

Fam = InputBox("Введите Вашу фамилию:", "Ввод фамилии")

Im = InputBox("Введите Ваше имя :", "Ввод имени")

Ot = InputBox("Введите Ваше отчество:", "Ввод отчества")

TextBox1.Text = Fam: TextBox2.Text = Im: TextBox3.Text = Ot

End Sub

58.Понятие массива. Описание массивов в vb. Динамические масивы.

Переопределение массивов.

В VBA различают два вида переменных — простые переменные и переменные структурного типа.

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

Массив представляет собой структуру, все элементы которой имеют одинаковый тип. Например, это могут быть данные, определяющие вектор или матрицу. Массивы могут быть одномерными и многомерными. Так, для отображения вектора может быть использован одномерный массив, а для отображения матрицы — многомерный.

Объявление массива имеет следующий вид:

Dim / Public / Private Имя_Массива (индексы)_Аs Тип_Данных

где:

Dim / Public / Private — ключевые слова, декларирующие массив в области его видимости;

Имя_Массива —идентификатор, определяющий имя массива;

Индексы — значение индекса (номера) последнего элемента в массиве, считая с нулевого;

As — ключевое слово, определяющее указание типа элементов массива;

Тип_Данных - любой, действительный для Visual Basic тип данных базовый или созданный пользователем.

Примеры описания статических массивов:

Dim B (5) As Single ' описан одномерный массив из 6 чисел вещественного типа

Dim C (1 To 12) As Integer ' описан одномерный массив из 12 целых чисел.

Объявление одномерного массива из восьми элементов выглядит следующим образом:

Dim МуАrrау (7) As integer 'одномерный целочисленный массив из 8 элементов.

При объявлении многомерного массива в поле индекса указывают несколько индексов в соответствии с размерностью массива. Двумерный массив из шести столбцов и пяти строк объявляется следующим образом:

Dim StrArray (4,5) As String ' двумерный массив из 5строк и 6 столбцов.

Пример заполнения массива:

Dim B ( ) As Single, N As Integer, i As Integer

N = Val(InputBox("Ввод количества элементов массива В"))

ReDim B (1 To N)

For i = 1 To N

B(i) =Val (InputBox("Ввод " & i & " элемента массива","Ввод с клавиатуры"))

Next i

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

В этом случае первоначально массив объявляется как динамический. Для этого в объявлении не указывается размерность. Например:

Dim strMyArray () As String

Количество элементов в объявленном массиве и его размерность в процессе выполнения программы можно переопределить с помощью ключевого слова ReDim. Синтаксическая конструкция переопределения массива имеет вид:

ReDim [Preserve] ИмяМассива (индексы) [As ТипДанных]

где:

ReDim — ключевое слово, указывающее что переопределяется размеры массива;

Preserve — необязательное ключевое слово, с помощью которого дается указание, чтобы все элементы переопределенного массива сохранили свое значение;

Индексы — размерность массива (до 60).

Пример:

Dim strMyArray () As String 'объявление динамического масива

Dim intValarray As integer 'объявление переменной для хранения размерности

intValArray = 9 'инициализация значения

ReDim strMyArray (intValArray) 'одномерный массив из 10 элементов (базовый индекс равен 0)

Или другой пример:

Dim array ( ) As Long ' объявление динамического массива

……..

n = Val(InputBox("Ввод количества элементов массива array"))

ReDim array (1 To n) ' одномерный массив из n элементов