Заголовок
|
Имя
|
Действие
|
Файл
|
mnFile
|
|
--открыть файл
|
mnOpen
|
Открывает файл
|
--сохранить файл
|
mnSave
|
Сохраняет файл
|
--Вычисить
|
mnGauss
|
Нахождение неизвестных значений
|
--Выход
|
mnExit
|
Завершение работы приложения
|
Электрическая схема
|
mnES
|
Открываем форму Form2
|
О программа
|
mnAbout
|
Открывает форму frmSplash
|
Это меню создается с помощью
мастера MenuEditor, который вызывается из меню Tools, либо с помощью нажатия на клавиатуре Ctrl+E (рисунок
2.3).
Рисунок 2.3
Электрическая схема показана на
"Form2". эту форму со схемой можно вызвать
при помощи вызовом меню "Электрическая схема" (рисунок 2.4).
Рисунок 2.4.
В форме "О программе" приведенной
на рисунке 2.5 дано краткое описание программы.
Рисунок 2.5
Запускаем исполняемый файл “ Расчет
токов разветвленной цепи. exe" или открываем файл
“ Проект1" и запускаем (F5). В появившемся окне
выведено окно заставки. По нажатию кнопки “ok,
открывается главная форма.
С помощью текстового меню
открываем файл, который осуществляется при помощи нажатие кнопки "Ввести
данные" или сопровождается вызовом меню Файл > Открыть файл,
либо с помощью нажатия на клавиатуре Ctrl+А,
создается текстовый документ, куда вводятся в одну строчку значения
сопротивлений нагрузок, в следующую строчку значения ЭДС источников через
пробел, а также выводится исходная система уравнений в виде таблице на элемент FlexGrid
При нажатии на кнопку “Вычислить”
или вызовом меню Файл > Вычислить происходить реализация программного
кода, включающего в себя метод Гаусса с выбором ведущего элемента по строке, результаты
расчетов токов выводятся на элемент TextBox.
Можно просмотреть данную
электрическую схему через вызов меню "Электрическая схема".
Также в программе реализована
функция сохранения результатов, которая осуществляется вызовом меню Файл >
сохранить файл. При нажатие кнопки "выход" закрывается данное
приложение.
В результате данной курсовой
работы были рассчитаны токи разветвленной цепи при помощи законов Кирхгофа. Система
линейных уравнений была решена методом Гаусса с выбором ведущего элемента по
строке и выведена на элемент FlexGrid. Результаты
расчета выведены на элемент TextBox.
Данная программа может
использоваться при анализе конкретной электрической цепи в электротехники.
2.
ГОСТ 2.105 - 95. Общие требования к текстовым документам. Дата введения
1996-07-01. Взамен ГОСТ 2.105-79, ГОСТ 2.906-71
3.
ГОСТ 19.701-90 схемы алгоритмов программ, данных и систем. Дата введения
1992-01-01. Взамен ГОСТ 19.002-80
4. Нейман Ю.М.,
Хлебников В.А. Введение в теорию моделирования и параметризации педагогических
тестов. М.: Адепт, 2000.168 с.
5.
Гайдамакин Н.А. Автоматизированные информационные системы, базы и банки
данных. Москва: Гелиос АРВ, 2002.225 с.
6.
Хомоненко А.Д. Базы данных. СП: Корона принт, 2000.637 с.
7.
Письменный Д.Т. Конспект лекций по высшей математике. М.: Айрис-пресс,
2005. - 228 с.: ил.
Dim a (6,6) As Double
Dim X (6) As Double
Dim rr (4) As Double
Dim e (5) As Double
Private Sub Command1_Click
()
Call Gauss
End Sub
Private Sub
Command2_Click ()
Call Vectidan
End Sub
Private Sub
mnES_Click ()
Form2. Show
End Sub
Private Sub
mnGauss_Click ()
Call Gauss
End Sub
Private Sub
mnOpen_Click ()
Call Vectidan
End Sub
Private Sub
mnSave_Click ()
Dim sfilename
As String, sdark As String
Dim stext As String
'вводим диалог сохранения файла
CommonDialog1. FileName
= ""
CommonDialog1. ShowSave
If
CommonDialog1. FileName <> "" Then
sfilename =
CommonDialog1. FileName
'открываем
диалог на запись
Open sfilename
For Output As #2
Print #2, Text1.
Text + " "
Print #2, Text2.
Text + " "
Print #2, Text3.
Text + " "
Print #2, Text4.
Text + " "
Print #2, Text5.
Text + " "
Print #2, Text6.
Text + " "
Close #2
End If
End Sub
Sub Vectidan ()
Dim sfilename
As String, sdark As String
Dim stext As
String
'ввод диалога
открытия файла
CommonDialog1. FileName
= ""
CommonDialog1. ShowOpen
If
CommonDialog1. FileName <> "" Then
sfilename =
CommonDialog1. FileName
'открываем файл
на чтение
Open sfilename
For Input As #1
stext =
""
'читаем текст
Input #1, stext
t = Split (stext,
" ")
For i = 1 To 4
rr (i) = t (i -
1)
Next i
Input #1, stext
t = Split (stext,
" ")
For i = 1 To 5
e (i) = t (i - 1)
Next i
n = 6
m = 7
Call dann
'устанавливаем число строк и
слобцов
MSFlexGrid1. Cols
= m + 1
MSFlexGrid1. ColWidth
(0) = 300
'вывод нуемерации
столбцов
MSFlexGrid1. Row
= 0
For i = 1 To m
MSFlexGrid1. Col
= i
MSFlexGrid1. Text
= Str (i)
MSFlexGrid1. ColWidth
(i) = 400
Next i
'вывод
нуемерации строк
MSFlexGrid1. Col
= 0
For i = 1 To n
MSFlexGrid1. Row
= i
MSFlexGrid1. Text
= Str (i)
Next i
'устанавливаем адрес ячейки для
вывода
For i = 1 To n
For j = 1 To m
- 1
MSFlexGrid1. Row
= i
MSFlexGrid1. Col
= j
MSFlexGrid1. Text
= CStr (a (i, j))
Next j
MSFlexGrid1. Row
= i
MSFlexGrid1. Col
= j
MSFlexGrid1. Text
= CStr (X (i))
Next i
MSFlexGrid1. Row
= 4
MSFlexGrid1. Col
= 1
MSFlexGrid1. CellForeColor
= vbRed
MSFlexGrid1. Row
= 5
MSFlexGrid1. Col
= 5
MSFlexGrid1. CellForeColor
= vbRed
MSFlexGrid1. Row
= 6
MSFlexGrid1. Col
= 5
MSFlexGrid1. CellForeColor
= vbRed
MSFlexGrid1. Row
= 6
MSFlexGrid1. Col
= 6
MSFlexGrid1. CellForeColor
= vbRed
MSFlexGrid1. Row
= 6
MSFlexGrid1. Col
= 7
MSFlexGrid1. CellForeColor
= vbGreen
MSFlexGrid1. Row
= 5
MSFlexGrid1. Col
= 7
MSFlexGrid1. CellForeColor
= vbGreen
MSFlexGrid1. Row
= 4
MSFlexGrid1. Col
= 7
MSFlexGrid1. CellForeColor
= vbGreen
'закрываем файл
Close #1
End If
End Sub
Sub Gauss ()
Dim i, j, k, r
As Double
Call dann
n = 6
' метод
'поиск главного элемента в i-том столбце
For i = 1 To n
k = i
r = Abs (a (i,
i))
For j = i + 1
To n
If Abs (a (j, i))
> r Then
k = j
r = a (j, i)
End If
Next j
If r = 0 Then
Exit For
If k <> i
Then
'перестоновка
r = X (k)
X (i) = r
For j = 1 To n
r = a (k, j)
a (k, j) = a (i,
j)
a (i, j) = r
Next j
End If
'исключение i-ого
неизвестного
r = a (i, i)
X (i) = X (i) /
r
For j = 1 To n
a (i, j) = a (i,
j) / r
Next j
For k = i + 1
To n
r = a (k, i)
X (k) = X (k) -
r * X (i)
For j = 1 To n
a (k, j) = a (k,
j) - r * a (i, j)
Next j
Next k
Next i
'обратный ход
For i = n - 1
To 1 Step - 1
For j = i + 1
To n
X (i) = X (i) -
a (i, j) * X (j)
Next j
Next i
Text1. Text =
Format (X (1), "0.000") & " A"
Text2. Text =
Format (X (2), "0.000") & " A"
Text3. Text =
Format (X (3), "0.000") & " A"
Text4. Text =
Format (X (4), "0.000") & " A"
Text5. Text =
Format (X (5), "0.000") & " A"
Text6. Text =
Format (X (6), "0.000") & " A"
End Sub
Private Sub
mnAbout_Click ()
frmAbout. Show
End Sub
Private Sub
mnExit_Click ()
End
End Sub
Private Sub
dann ()
n = 6
m = 7
a (1,1) = - 1
a (1,2) = 1
a (1,3) = 1
a (1,4) = 0
a (1,5) = 0
a (1,6) = 0
a (2,1) = 0
a (2,2) = 0
a (2,3) = - 1
a (2,4) = - 1
a (2,5) = 0
a (2,6) = 0
a (3,1) = 0
a (3,2) = 1
a (3,3) = 0
a (3,4) = 0
a (3,5) = 1
a (3,6) = 1
a (4,1) = rr (1)
a (4,2) = 0
a (4,3) = 0
a (4,4) = 0
a (4,5) = 0
a (4,6) = 0
a (5,1) = 0
a (5,2) = 0
a (5,3) = 0
a (5,5) = rr (2)
a (5,6) = 0
a (6,1) = 0
a (6,2) = 0
a (6,3) = 0
a (6,4) = 0
a (6,5) = rr (2)
a (6,6) = - rr
(4) - rr (3)
X (1) = 0
X (2) = 0
X (3) = 0
X (4) = e (2) -
e (3)
X (5) = e (1)
X (6) = e (1) +
e (4) - e (5)
End Sub