
- •Предисловие
- •Лабораторная работа №1 программирование арифметических выражений
- •Лабораторная работа №2 программирование линейных алгоритмов
- •Ввод и вывод данных при помощи текстового окна (-TextBox)
- •Ввод и вывод данных с помощью системных функций InputBox() и MsgBox()
- •Лабораторная работа №3 программирование разветвляющихся процессов
- •Лабораторная работа № 4 программирование циклов с параметрами
- •Лабораторная работа № 5 программирование циклов с предусловием
- •Лабораторная работа № 6 программирование циклов с постусловием
- •Лабораторная работа №7 программирование вложенных циклов
- •Программирование одномерных массивов
- •Лабораторная работа № 9 программирование многомерных массивов
- •Оглавление
Ввод и вывод данных при помощи текстового окна (-TextBox)
Элемент управления TextBoxможет быть использован как для ввода,
так и для вывода данных. Все данные,
которые отображаются на форме, содержатся
в свойствеTextтекстового
окна (вообще, все данные, отображаемые
на форме, как правило, содержатся либо
в свойствеText, либо в
свойствеCaption, в зависимости
от элемента управления).
Доступ к свойствам объектов VisualBasicпрограммным путем осуществляется по следующей схеме:Имя_Объекта.Свойство. Например, для того чтобы присвоить переменной вещественного типа одинарной точности числовое значение, содержащееся в текстовом окне, необходимо написать в программе следующий оператор присваивания:x=CSng(Text1.Text). В данном случае,Text1 –имя текстового окна (объектTextBox). Как было отмечено выше, содержимое текстового окна содержится в свойствеTextв символьном виде (типString). Преобразование символов из строкового типа в число вещественного типа одинарной точности осуществляет функцияCSng(). Для преобразования числового типа в строковый используется функцияCStr(). Основные функции преобразования типов приведены в таблице.
Таблица 3. Функции преобразования типов.
Функция |
Описание |
CBool() |
Преобразует переменную строкового типа (String) в типBoolean |
Cbyte() |
Преобразует переменную строкового типа (String) в типByte |
Ccur() |
Преобразует переменную строкового типа (String) в типCurrency |
Cdate() |
Преобразует переменную строкового типа (String) в типDate |
CDbl() |
Преобразует переменную строкового типа (String) в типDouble |
Cint() |
Преобразует переменную строкового типа (String) в типInteger |
CLng() |
Преобразует переменную строкового типа (String) в типLong |
CSng() |
Преобразует переменную строкового типа (String) в типSingle |
CStr() |
Преобразует числовую переменную в строковый тип String |
Val() |
Преобразует переменную строкового типа (String) в числовой тип |
Для решения задачи нам понадобятся: три надписи, три текстовых окна и две кнопки. Для того чтобы поместить первую метку на форму необходимо проделать следующие действия:
Щелкните на элементе управления Label
.
На форме, в том месте, куда вы хотите поместить надпись, при помощи манипулятора мышь нарисуйте прямоугольник.
Появившаяся по умолчанию надпись Label1 на форме, пользователю ни о чем не говорит. По-этому щелкните левой кнопкой мышки напротив свойстваCaptionокна свойств, удалите надписьLabel1 и напишитеX.
Установите свойство AutoSizeв положениеTrue. Данное свойство позволит произвести выравнивание метки по ширине помещенного в нее текста.
Аналогично поместите на форму надписи для AиY.
Ввод и вывод данных будет осуществляться через текстовые окна. Поместите на форму три текстовых окна, произведя следующие действия:
Щелкните левой кнопкой мышки на элементе управления TextBox
.
На форме, в том месте, куда вы хотите поместить текстовое окно, с помощью мыши нарисуйте прямоугольник.
Измените свойство Textна пустую строку.
Для переменных А и Yсоздайте еще два текстовых окна.
Чтобы поместить кнопку на форму, щелкните
мышью на элементе управления CommandButton.
Измените свойствоCaptionсCommand1 на РЕШЕНИЕ. Поместив
вторую кнопку на форму, измените ее
свойствоCaptionна ВЫХОД.
Таким образом, мы закончили этап визуального проектирования, разработав пользовательский интерфейс приложения. Ваша форма должна выглядеть примерно так, как показана на рисунке 2:
Рис 2. Окно формы приложения
Переходим ко второму этапу – написанию программного кода. Дважды щелкните мышью на кнопке Command2 (ВЫХОД). На экране появится окно редактора программного кода (см. рис. 3)
Рис 3. Окно редактора программного
кода.
В этом окне появилась «заготовка» для процедуры обработки события Click, которое происходит при нажатии пользователем на кнопке ВЫХОД. Между появившимися строчками редактора напишите операторEnd. Данный оператор завершает выполнение программы, закрывает и выгружает из памяти компьютера все формы приложения, удаляет переменные из памяти компьютера.
Перейдите снова в окно формы и дважды щелкните мышью на кнопке РЕШЕНИЕ. В появившемся окне, между строчками PrivateSubCommand1_Click() иEndSub, напишите следующий программный код:
Dim x As Single, y As Single, a As Single
x = CSng(Text1.Text)
a = CSng (Text2.Text)
a = 3.1415926 * a / 360
y = Sqr(Abs(Sqr(Abs(x – 7 * Cos(a))) / Log(x – 3)))
Text3.Text = CStr(y)
В результате программный код вашего приложения должен иметь следующий вид:
Private Sub Command1_Click()
Dim x As Single, y As Single, a As Single
x= CSng(Text1.Text)
a = CSng (Text2.Text)
a = 3.1415926 * a / 360
y = Sqr(Abs(Sqr(Abs(x – 7 * Cos(a))) / Log(x – 3)))
Text3.Text = CStr(y)
End Sub
Private Sub Command2_Click()
End
End Sub
Рассмотрим подробнее программный код.
В первой строке описываются переменные. Переменные используются во время выполнения программы для временного хранения данных в оперативной памяти компьютера. Каждая переменная в VisualBasicдолжна иметь имя и принадлежать к одному из типов переменных. С помощью имен осуществляется привязка переменных к их положению в памяти компьютера, а тип переменной определяет, какого рода информация в ней хранится. При назначении имени переменной необходимо придерживаться следующего правила.
Имя переменной выбирается произвольно, но:
- имя переменной должно начинаться только с буквы (не с цифры или специального символа);
- в оставшейся части имени можно использовать произвольную комбинацию букв, цифр, и символов подчеркивания _. В именах переменных нельзя использовать пробелы, точки и другие знаки препинания;
- имя переменной должно быть уникальным в пределах зоны ее видимости. Зона видимости зависит от способа объявления переменной;
- длина имени переменной не должна превышать 255 символов;
- нельзя назначать имя переменной, если оно совпадает с одним из ключевых слов VisualBasic.
Перед использованием в программе, переменная должна быть объявлена. При объявлении переменной, ей присваивается имя и определяется тип, к которому она должна принадлежать. Если программистом тип переменной не указан, то в VisualBasicона, по умолчанию, будет иметь типVariant. ВVisualBasicдля описания переменных используется операторDim. Формат оператора имеет следующий вид:
DIM<имя переменной>AS<тип переменной>.
Основные типы переменных представлены в таблице 4.
Таблица 4. Основные типы переменных Visual Basic.
№ п.п. |
Тип переменной |
Описание типа |
Количество занимаемой памяти |
Принимаемые значения |
1. |
Integer |
Целое число одинарной точности. |
2 байта |
-32768…32767 |
2. |
Long |
Целое число двойной точности. |
4 байта |
-2 147 483 648… 2 147 483 647 |
3. |
Single |
Десятичное число с плавающей точкой одинарной точности |
4 байта |
±(10-45…3·1038) |
4. |
Double |
Десятичное число с плавающей точкой двойной точности |
8 байт |
±(5·10-328…1.8·10308) |
5. |
Currency |
Десятичное число с фиксированной точкой |
8 байт
|
±9·1014 |
6. |
String |
Строка символов |
1 байт/ 1 символ |
До 65 400 символов |
7. |
Byte |
Целое число |
1 байт |
0…255 |
8. |
Boolean |
Логическое значение |
2 байта |
True или False |
9. |
Date |
Дата и время |
8 байт |
1/1/100…12/31/9999 |
№ п.п. |
Тип переменной |
Описание типа |
Количество занимаемой памяти |
Принимаемые значения |
10. |
Object |
Экземпляр класса объекта OLE |
4 байта |
|
11. |
Variant |
Любой из выше перечисленных типов |
16 байт + 1 байт/1 символ |
|
Например, чтобы объявить переменную aкак вещественное число, необходимо написать следующую строку программного кода:
DIM a AS Single
Если требуется объявить несколько переменных в одной строке, то может быть использована следующая конструкция:
DIM <имя_переменной1> AS <тип_переменной1>,<имя_переменной2> AS <тип_переменной2>
В данной конструкции ключевое слово DIMзаписывается один раз, затем через запятую записываются переменные и их типы. Между именами переменных и их типами записываются ключевые словаAs. При объявлении нескольких переменных с помощью конструкции:
DIM <имя_ переменной1>, <имя_переменной2>, <имя_переменной3> AS <тип_переменной>
первые две переменные будут иметь тип Variant(задаваемый по умолчанию), а третьей будет присвоен тип, указанный в оператореDIM.
Следующие строчки программного кода вводят значения переменных xиa:
x = CSng(Text1.Text)
a = CSng (Text2.Text)
Переменным xиaприсваивается содержимое тестовых оконText1 иText2 соответственно. Содержимое текстовых окон в среде программированияVisualBasicсодержится в свойствеTextв виде строки символов (типString). Поэтому, для преобразования строки символов в вещественное число, используется функцияCSng().
Строка a= 3.1415926 *a/ 360 осуществляет перевод из градусной меры угла в радианную.
Арифметическое выражение вычисляется в строке:
y = Sqr(Abs(Sqr(Abs(x – 7 * Cos(a))) / Log(x – 3)))
Вывод параметра yзаписан в строкеText3.Text = CStr(y). Здесь свойствуTextтекстового окнаText3 присваивается значение результата вычислений у. Перевод числового значения переменной у в символьный тип осуществляется функциейCStr().