Скачиваний:
13
Добавлен:
30.09.2018
Размер:
356.86 Кб
Скачать

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 Закройте среду программирования

Соседние файлы в папке Лаб_2часть