- •Федеральная служба воздушного транспорта россии
- •Теоретическая часть
- •1.1 Меню среды программирования
- •1.2 Основы языка Visual Basic
- •Переменные и константы
- •Операции
- •Конкатенация строк
- •Функции
- •Условные операторы (ветвление по условию)
- •Лабораторная работа № 4 Массивыи циклы
- •Теоретическая часть
- •1.1 Меню среды программирования
- •1.2. Массивы
- •Массивы объектов
- •Циклы со счетчиком
- •2. Порядок выполнения работы
- •Лабораторная работа № 5 Процедуры и функции
- •Теоретическая часть
- •1.1 Меню среды программирования
- •1.2 Процедуры и функции
- •2. Порядок выполнения работы
- •Лабораторная работа № 6 Построение графиков
- •Теоретическая часть
- •1.1 Системы координат компонентов vb
- •1.2. Управление цветом
- •1.3. Графические методы
- •2. Порядок выполнения работы
2. Порядок выполнения работы
2.1 Откройте проект Satm4.
2.2 Оформите формулы расчета параметров атмосферы как отдельные процедуры
2.2.1 Объявите процедуры расчета параметров атмосферы в тропосфере и стратосфере
перейдите в окно Project Explorerи убедитесь в том что активна форма с именем frmSa,
откройте окно кода,
откройте меню Toolsи выполните командуAdd Procedure,
в открывшемся окне в поле Nameвведите имя новой процедурыSa_Tropo- процедуры расчета параметров атмосферы в тропосфере,
убедитесь в том, что активны переключатели SubиPublic,
нажмите кнопку Ok– в поле кода появляется обьявление новой процедурыSa_Tropo
Public Sub Sa_Tropo()
End Sub
аналогичным образом обьявите процедуру Sa_Stratoдля расчета параметров атмосферы в стратосфере.
2.2.2 Переместите необходимые операторы в процедуры
перейдите в код процедуры Private Sub CmdOk_Click(),
выделите формулы расчета параметров атмосферы в тропосфере (четыре строки после строки 'Формулы расчета для тропосферы) и нажмите клавишиCtrl+X. Выделенный блок удаляется в буфер обмена.
установите курсор в тело процедуры Sa_Tropo()и нажмите левую клавишу мыши,
нажмите клавиши Ctrl+V. В тело процедуры из буфера обмена копируются формулы расчета параметров атмосферы в тропосфере,
перейдите в код процедуры Private Sub CmdOk_Click(),
выделите строки с описанием констант (sngP0, sngR0, sngT0)и переменных(sngGradTempH)и переместите их в тело процедурыSa_Tropo().
аналогичным образом переместите необходимые формулы, константы и переменные, используемые при расчете параметров в стратосфере, в тело процедуры Sa_Strato.
2.2.3 Организуйте передачу параметров в процедуры и их вызов
введите в скобки после имени процедуры Sa_Tropo следующий текст
j As Integer,
введите в скобки после имени процедуры Sa_Stratoследующий текст
j As Integer,
перейдите в код процедуры Private Sub CmdOk_Click(),
в конец строки If gsngSa(1, j) <= 11000 Then- введите текст
Call Sa_Tropo( j )
в конец строки If gsngSa(1, j) > 11000 Then - введите текст
Call Sa_Strato( j )
уберите ненужные теперь ключевые слова End If
2.3 Сохраните проект в своей личной папке под новым именем – Satm5.
перейдите в окно Project Explorerи убедитесь в том что активна форма с именемfrmSa,
откройте меню Fileи выполните командуSave satm4-1.frm As,
в открывшемся окне в поле File name(Имя файла) укажите новое имяSatm5-1и нажмите клавишуSave(Сохранить),
перейдите в окно Project Explorerи сделайте активной форму с именемfrmTabl,
откройте меню Fileи выполните командуSave satm4-2.frm As,
в открывшемся окне в поле File name укажите новое имяSatm5-2 и нажмите клавишуSave,
откройте меню File и выполните командуSave Project As,
в открывшемся окне в поле File nameукажите новое имяSatm5и нажмите клавишуSave.
2.4 Протестируйте программу на ввод возможных ошибочных данных.
2.4.1 Ввод символов букв
запустите программу на выполнение в среде VB5.0,
введите в поле ввода начальной высоты 0,
введите в поле ввода приращение высоты строку символов asdf.Обратите внимание на то, что программа позволяет вводить вместо цифровых символов символы букв,
введите в поле ввода конечной высоты значение 100.
нажмите клавишу Enter. Выводится информационная панель системы программирования с сообщением об ошибке – деление на ноль.
нажмите кнопку Debugв информационной панели. Обратите внимание на то, что в поле кода оператор, в котором произошла ошибка вычислений, выделяется желтым фоном,
завершите выполнение программы, выполнив команду Endиз менюRun.
2.4.2 Ввод нулевого значения конечной высоты
запустите программу на выполнение в среде VB5.0,
введите в поле ввода начальной высоты asdf,
введите в поле ввода приращение высоты значение 100,
введите в поле ввода конечной высоты значение 0.
нажмите клавишу Enter. Программа выполняется для одного цикла. Однако этого допустить нельзя, т.к. была введена строка нецифровых символов в поле ввода начальной высоты.
2.5 Организуйте проверку ввода значений исходных данных
2.5.1 Проверка значения приращения высоты (приращение высоты не должно быть равно нулю и не может превышать значение конечной высоты)
убедитесь в том, что форма с именем frmSaактивна,
перейдите в код процедуры Private Sub CmdOk_Click(),
после строки gsngH_pr = Val(TxtHpr.Text)введите текст
Select Case gsngH_pr
Case Is >= gsngH_k
MsgBox "1.Значение конечной высоты должно быть больше" _
+" приращения высоты"
Case Is = 0
MsgBox "1.Значение приращения высоты должно быть больше 0" _
+ vbCrLf + "2. Повторите ввод"
TxtHn.Text = "" 'Вывод пустой строки в поле ввода
TxtHk.Text = ""
TxtHpr.Text = ""
GoTo M1 ‘ Переход к концу процедуры Private Sub CmdOk_Click()
End Select
установите метку безусловного перехода - введите перед строкой End Subтекст M1:
2.5.2 Проверка значения конечной высоты (если конечная высота меньше начальной, то осуществляется выход из процедуры Private Sub CmdOk_Click())
выполните самостоятельно п. 2.5.1 с соответствующими изменениями имен переменных и текстов сообщений.
2.6 Оформите вывод сообщения об ошибке ввода высоты (меньше нуля и больше 15000 м ) как отдельную процедуру-функцию.
2.6.1 Обьявите новую функцию
перейдите в окно Project Explorerи убедитесь в том, что форма с именемfrmSaактивна,
откройте окно кода,
откройте меню Toolsи выполните командуAdd Procedure,
в открывшемся окне в поле Nameвведите имя новой функцииErVvod_1, которая будет выводить текст сообщений при вводе значения конечной высоты меньше начальной,
убедитесь в том, что активны переключатели FunctiоnиPrivate,
нажмите кнопку Ok– в поле кода появляется обьявление новой функцииErVvod_1
Private Function ErVvod_1()
End Function
2.6.2 Переместите необходимые операторы в тело функции ErVvod_1()
перейдите в код процедуры Private Sub CmdOk_Click(),
выделите все строки от строки Rem Вывод сообщения об ошибке ввода высотыдо строкиElse
нажмите клавиши Ctrl+X.
установите курсор в тело функции ErVvod_1()и нажмите левую клавишу мыши,
нажмите клавиши Ctrl+V
2.6.3 Организуйте вызов функций
перейдите в код процедуры Private Sub CmdOk_Click(),
обьявите переменную TextErVvodкак переменную произвольного типа,
после строки Rem Вывод сообщения об ошибке ввода высоты- введите текст
TextErVvod = ErVvod_1()
2.7 Оформите как отдельную процедуру проверку ввода только цифровых символов в текстовые поля ввода.
2.7.1 Обьявите новую функцию
перейдите в окно Project Explorerи убедитесь в том, что форма с именемfrmSaактивна,
откройте окно кода,
откройте меню Toolsи выполните командуAdd Procedure,
в открывшемся окне в поле Nameвведите имя новой функцииProv,
убедитесь в том, что активны переключатели FunctiоnиPrivate,
нажмите кнопку Ok– в поле кода появляется обьявление новой функцииProv
Private Function Prov ()
End Function
2.7.2 Введите необходимые операторы
укажите формальные параметры функции – введите в скобки после имени функции ProvтекстKeyAscii
введите в тело функции Provнеобходимые операторы
Static DecPoint As Integer
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If DecPoint Then
KeyAscii = 0: Beep
Else
DecPoint = True
End If
Case Asc(",")
KeyAscii = 0
Case Else
KeyAscii = 0: Beep
End Select
Prov = KeyAscii
2.8 Организуйте вызов функции Provпри вводе символов в поле ввода начальной высотыTxtHn
убедитесь в том, что форма с именем frmSaактивна,
в разделе общих описаний обьявите глобальную переменную – введите Public KeyAscii As Integer
в поле кода из списка обьектов выберите TxtHn,
из списка процедур выберите процедуру KeyPress. Появляется обьявление процедуры
Private Sub TxtHn_KeyPress(KeyAscii As Integer)
End Sub
введите в тело процедуры необходимые операторы
Dim Simv
Simv = Prov(KeyAscii)
2.9 Протестируйте программу на ввод символов букв
запустите программу на выполнение в среде VB5.0,
введите в поле ввода начальной высоты asd. Обратите внимание на то, что программа не позволяет вводить вместо цифровых символов символы букв и дает предупреждение сигналом,
завершите выполнение программы, выполнив команду Endиз менюRun.
2.10 Организуйте вызов функции Provпри вводе символов в поле ввода приращения высотыTxtHprи конечной высотыTxtHk
выполните самостоятельно п. 2.8 с соответствующими изменениями имен переменных.
2.11 Протестируйте программу на ввод символов букв в поля ввода приращения высоты и конечной высоты.
2.12 Сохраните разработанный проект.
2.13 Закройте среду программирования