Ввод начальных данных

Следующим в событийной процедуре является раздел ввода начальных данных. Для задания начальных данных в VB можно использовать:

1. Текстовые поля (TextBox) на форме.

2. Функцию InputBox(), которая выводит на экран диалоговое (модальное) окно. На нем содержатся: приглашение на ввод, текстовое поле ввода, кнопки ОК, Cancel (“Отмена” в русифицированных версиях), кнопка «Справка» и числа, указывающие расстояние от левого края экрана до левого края окна (координата X) и расстояние от верхнего края экрана до верхнего края окна (координата Y).

3. Оператор присваивания для задания начальных данных программным путем.

4. Оператор RND, генерирующий случайные числа.

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

Первый интерактивный способ ввода начальных данных имеет такую особенность – любые введенные данные представляют собой строковые (текстовые) данные. Поэтому при вводе числовых данных их следует перевести в числовые с помощью стандартной функции Val().

Например, в текстовое поле Text1 вводим число строк (m), а в Text2 вводим число столбцов (n) матрицы. Тогда после ввода этих чисел для дальнейшего использования переменных m и n мы обязаны в процедуре написать коды:

m = Val(Text1.Text)

n = Val(Text2.Text)

Текстовые поля для ввода данных можно использовать, если количество данных небольшое и заранее известно.

Если же количество вводимых данных может изменяться, то лучше использовать для интерактивного ввода функцию InputBox().

Например, для ввода элементов матрицы dblMat(i,j), количество которых будет каждый раз зависеть от ее размерности (m x n), диалоговое окно может быть задано следующим кодом, которое будет телом вложенного цикла:

dblMat(i,j) = InputBox(“Введите элемент dblMat( “& i & “,” _

& j & “)”, “Ввод матрицы”, , 3700, 5050)

Здесь строка в двойных кавычках до первой запятой – приглашение, вторая строка («Ввод матрицы») – заголовок окна, 3500 и 4500 – числа, задающие расположение окна на экране в твипах (1 твип ≈ 0,00297см). В примере диалоговое окно ввода устанавливается в правом нижнем углу экрана 15-дюймового экрана. В первой строке после записи “,” сделан пробел и введен знак подчеркивания ( _ ). Это знак переноса кода. Используется, если программное выражение длинное и не умещается в одной строке.

На рис. 1.8 приведен вид диалогового окна для ввода элементов матрицы MN().

 

Использование оператора присвоения никаких особенностей и трудностей не вызывает. Пример ввода размерности и элементов матрицы:

‘ размерность матрицы m = 2, n = 3

dblMat(1,1) = 23.34: dblMat(1,2) = 88.38: dblMat(1,3) = 8.36

dblMat(2,1) = 40.04: dblMat(2,2) = 47.55: dblMat(2,3) = 18.78

Здесь пишется разделитель двоеточие (:), так как в строке записывается несколько операторов.

При использовании оператора RND для ввода исходных данных следует учесть следующее. RND генерирует случайные числа в диапазоне от 0 до 1. Минимальное число будет 0,0000001, максимальное 0,9999999. Для получения чисел в диапазоне целых чисел от M до N необходимо применять оператор:

dblMat(i,j) = Int(RND*(N – M +1)) + M

‘функция Int() возвращает целую часть числа, а

‘M, N – целые числа

Все пояснения после апострофа есть комментарий, который именно так пишется в программах VB. Другой вариант комментария:

Rem Это тоже комментарий, но проще ввести апостроф

В отличие от Паскаля, комментарий в VB – не многострочный, а однострочный, т. е. на каждой строчке перед комментарием следует вводить апостроф или Rem.

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








Дата добавления: 2015-02-05; просмотров: 927;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.