Программа для вычисления влажности осадка

Страницы работы

Фрагмент текста работы

2.Назначение программы.

Программа предназначена для вычисления влажности осадка (V) по формуле:

V=B0+B1*X1+B2*X2+B3*X3

 

,где X1 ,X2 ,X3 – входные факторы, которые нужно задать, для вычисления влажности.(указано в задании)

Учитывается вычисление с нормированными значениями входных факторов и с вводимыми, без нормирования.

3.Работа с программой.

Окно «Приветствие»

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

На форме также имеются две кнопки: «Выход» и «Далее».

- При нажатии «Выход» появляется окно, с подтверждением выхода, при подтверждении происходит выход из программы.

- При нажатии «Далее» переходите на основную форму программы.

Окно «Меню»

Основная форма, на которой осуществляются все операции по вычислению.

В меню формы имеются следующие пункты:

I.Пункт меню «Файл»:

1) «Загрузить»- загрузка сохранённых данных

2) «Сохранить»- сохранение полученных результатов в текстовый файл, который находится в: «A:\\Kuroptev.txt»

3) «Выход» - при нажатии появляется окно, с подтверждением выхода, при подтверждении происходит выход из программы. Также можно выйти, нажав горячие клавиши Ctrl + X.

II.Пункт меню «Инструменты»

1)  «Ввод»- при нажатии этой кнопки появляется окно, в котором необходимо ввести значение параметра, находящееся в указанном диапазоне. При ошибке ввода(нарушение регламента или  ввод текстовых данных) появляется сообщение об ошибке. При нажатии «ОК» предлагается ввести данные заново.

2)  «Вычисление» - расчёт влажности по вышеуказанной формуле.

А) С нормированными значениями

Б) С вводимыми значениями

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

III.Пункт меню «Разное»

1)  «Калькулятор» - при нажатии открывается форма с калькулятором (описание ниже)

2)  «Кукушка» - программа, рассчитывающая количество времени, прошедшее с Вашего дня рождения.(описание ниже)

IV.Пункт меню «Помощь»

1)  «Обо мне»- информация об авторе.

2)  «О программе»- общая информация о программе.

Так же на форме имеется меню , всплывающее при нажатии правой кнопки мыши.

1)  «Назад»- переход к предыдущей форме «Приветствие»

2)  «Выход»- при нажатии появляется окно, с подтверждением выхода, при подтверждении происходит выход из программы.

Окно «Калькулятор»

Форма, для проведения математических действий: умножение, деление, вычитание, сложение.

Поле для ввода, напротив «1-е число»- это значение X

Поле для ввода, напротив «2-е число»- это значение Y

Справа, во фрейме «Действие» выбирается одна из математических операций.

Операции производятся по следующему принципу:

«Умножение»-  X*Y

«Деление»-  X/Y

«Вычитание»-  X-Y

«Сложение»- X+Y

При нажатии кнопки «Расчёт» результат выводится в поле, напротив «Результат»

При нажатии кнопки «Закрыть» происходит выход из калькулятора в окно «Меню».

Окно «Кукушка»

Подпрограмма, рассчитывающая количество времени, прошедшее с Вашего дня рождения.

Справа от поля «Мой Д.Р.» вводится дата Вашего дня рождения.

Справа от поля «Сегодн. дата» отображается системная дата, то есть та дата, которая установлена в Windows.

Справа от «Интервал» находится поле для ввода параметров, согласно которым ведётся счёт прошедшего времени.

Параметр

Вывод

yyyy

год

q

квартал

m

месяц

w

неделя

h

час

n

минута

s

секунда

При нажатии кнопки «Узнать сколько Вы прожили» результаты расчёта выводятся под полем «Я прожил:».

При нажатии кнопки «Выход» происходит выход из «Кукушки» в окно «Меню».

4.Вид форм и коды к ним.

Окно «Приветствие»:

Коды:

Option Explicit

'Объявление всех переменных и констант

Dim nf As Variant

Dim msgopt As Variant

Dim msgtxt As String

Dim msgtitle As String

Dim rv As Variant

Dim vbDefaulButton2 As Variant

Private Sub cmdC1_Click()

'Выход из программы

nf = " Kursovoj "

msgtxt = "Вы желаете выйти из программы" & nf & "?"

msgopt = vbExclamation + vbYesNo + vbDefaulButton2

msgtitle = "Подтверждение выхода"

rv = MsgBox(msgtxt, msgopt, msgtitle)

If rv = vbYes Then End

End Sub

Private Sub cmdC2_Click()

'переход на главную форму

FrmF1.Hide

FrmF2.Show

End Sub

Private Sub Form_Load()

'Развёртка формы во весь экран

FrmF1.WindowState = 2

End Sub

Окно «Меню»

Коды:

Option Explicit

'Объявление всех переменных и констант

Option Base 1

Dim msgtxt As String

Dim msgtitle As String

Dim go As Variant

Dim msgopt As Variant

Dim X3 As Variant

Dim Xmin(3) As Variant

Dim Xmax(3) As Double

Dim Xcp(3) As Double

Dim Xi(3) As Double

Dim Xd(3) As Double

Dim V As Double

Dim X1 As Variant

Dim X2 As Variant

Dim x As Double

Dim nf As Variant

Dim vbDefaulButton2 As Variant

Dim rv As Variant

Dim vbDefaulButton As Variant

'Коэфиценты модели

Const B0 = 80.1

Const B1 = 2.15

Const B2 = 1.5

Const B3 = -0.95

Private Sub cmdC2_Click()

'Очистка меток

lblL1.Visible = False

lblL2.Visible = False

lblL3.Visible = False

lblL4.Visible = False

lblL5.Visible = False

Lbll6.Visible = False

Lbll7.Visible = False

cmdC2.Visible = False

LblL8.Visible = False

LblL9.Visible = False

LblL10.Visible = False

LblL11.Visible = False

lblL5.Visible = False

End Sub

Private Sub cmdC1_Click()

'Выход из 2 формы и вход в 1

FrmF2.Hide

FrmF1.Show

End Sub

Private Sub Form_Load()

'Развёртка формы во весь экран

FrmF2.WindowState = 2

lblL1.Visible = False

lblL5.Visible = False

cmdC2.Visible = False

Lbll7.Visible = False

LblL8.Visible = False

LblL9.Visible = False

LblL10.Visible = False

LblL11.Visible = False

End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)

'Всплывающее меню

If Button = 2 Then

PopupMenu pmenu

End If

End Sub

Private Sub mnuExit_Click()

'Выход из программы

nf = " Kursovoj "

msgtxt = "Вы желаете выйти из программы" & nf & "?"

msgopt = vbExclamation + vbYesNo + vbDefaulButton2

msgtitle = "Подтверждение выхода"

rv = MsgBox(msgtxt, msgopt, msgtitle)

If rv = vbYes Then End

End Sub

Private Sub mnuFSave_Click()

'Сохранение результата

Open "d:\Kuroptev.txt" For Output As #1

Write #1, X1, X2, X3, V

Close #1

End Sub

Private Sub mnuHelpAM_Click()

' Обо мне

MsgBox "Куроптев Дмитрий Сергеевич, студент 536 гр. ФАСУТП", 64, "ОБ АВТОРЕ"

End Sub

Private Sub mnuHelpAP_Click()

'О программе

MsgBox "Программа для вычисления владности осадка на основе данных о скорости вращения барабана,уровне в вакуум фильтре и концентрации ила в ванне вакуум фильтра.Санкт-Петербург 2005г", 64, "О ПРОГРАММЕ"

End Sub

Private Sub mnuNLoad_Click()

'Показать данные предыдущего расчета

Open "d:\Kuroptev.txt" For Input As #1

Input #1, X1, X2, X3, V

Close #1

Lbll7.Visible = True

LblL8.Visible = True

LblL9.Visible = True

LblL10.Visible = True

LblL11.Visible = True

lblL5.Visible = True

cmdC2.Visible = True

LblL8.Caption = "Скорость вращения барабана=" & X1 & "об/мин."

LblL9.Caption = "Уровень в ванне вакуум-фильтра=" & X2 & "м"

LblL10.Caption = "Концентрация ила в ванне вакуум-фильтра=" & X3 & "г/л"

LblL11.Caption = "Влажность осадка=" & V & "%"

End Sub

Private Sub mnuTCalculate_Click()

'Открытие калькулятора

FrmF3.Show

End Sub

Private Sub mnuTCnenorm_Click()

'Расчет данных без нормирования

V = Format(B0 + B1 * X1 + B2 * X2 + B3 * X3, "###.00") 'Расчет влажности осадка

lblL1.Visible = True

lblL2.Visible = True

lblL3.Visible = True

lblL4.Visible = True

lblL5.Visible = True

Lbll6.Visible = True

cmdC2.Visible = True

lblL2.Caption = "Скорость вращения барабана=" & X1 & "об/мин."

lblL3.Caption = "Уровень в ванне вакуум-фильтра=" & X2 & "м"

lblL4.Caption = "Концентрация ила в ванне вакуум-фильтра=" & X3 & "г/л"

Lbll6.Caption = "Влажность осадка=" & V & "%"

End Sub

Private Sub mnuTCnorm_Click()

'Нормирование и расчет данных

Xmin(1) = 0.35

Xmax(1) = 0.85

Xmin(2) = 0.75

Xmax(2) = 0.95

Xmin(3) = 7.2

Xmax(3) = 29.5

Xcp(1) = (Xmax(1) + Xmin(1)) / 2

Xd(1) = (Xmax(1) - Xmin(1)) / 2

Xi(1) = (X1 - Xcp(1)) / Xd(1)

Xcp(2) = (Xmax(2) + Xmin(2)) / 2

Xd(2) = (Xmax(2) - Xmin(2)) / 2

Xi(2) = (X2 - Xcp(2)) / Xd(2)

Xcp(3) = (Xmax(3) + Xmin(3)) / 2

Xd(3) = (Xmax(3) - Xmin(3)) / 2

Xi(3) = (X3 - Xcp(3)) / Xd(3)

V = Format(B0 + B1 * Xi(1) + B2 * Xi(2) + B3 * Xi(3), "###.00") 'Расчет влажности осадка

lblL1.Visible = True

lblL2.Visible = True

lblL3.Visible = True

lblL4.Visible = True

lblL5.Visible = True

Lbll6.Visible = True

cmdC2.Visible = True

lblL2.Caption = "Скорость вращения барабана=" & X1 & "об/мин."

lblL3.Caption = "Уровень в ванне вакуум-фильтра=" & X2 & "м"

lblL4.Caption = "Концентрация ила в ванне вакуум-фильтра=" & X3 & "г/л"

Lbll6.Caption = "Влажность осадка=" & V & "%"

End Sub

Private Sub mnuTInput_Click()

'Ввод данных для расчёта

Do

X1 = (InputBox("Введите значение скорости вращения барабана в пределах от 0,35 до 0,85 об/мин. ", "ВВОД"))

If IsNumeric(X1) = True Then

X1 = CDbl(X1)

Select Case X1

Case 0.35 To 0.85

Exit Do

Case Else

MsgBox "Заданное вами число находится вне диапазона", 48, "Пожалуйста введите другое число"

End Select

Else

MsgBox " Убедитесь в том,что вы вводите число,а не текст", 16, "Внимание!!!"

End If

Loop

Do

X2 = (InputBox("Введите значение уровня в ванне вакуум-фильтра

Похожие материалы

Информация о работе