Курсовая работа
«Решение слау методом Халецкого VBasic»
- 28 страниц
Введение 4
Глава1. Описание метода Халецкого 5
Глава2. Блок-схема программы 6
Глава3. Описание основных форм программы и принципы их работы 7
Глава4. Результаты работы программы 11
Заключение 12
Список используемой литературы 13
Приложение 14
В данной курсовой работе рассмотрен один из методов вычислений системы линейных алгебраических уравнений – метод Халецкого. Данный метод решения СЛАУ является классическим и очень распространённым. К достоинствам метода можно отнести то, что он имеет широкое применение в математике, к примеру используется как вспомогательная часть в методе Монте-Карло для генерации коррелированных случайных величин. Так же этот метод является менее трудоёмким и малоресурсным по сравнению с другими методами.
Глава1. Описание метода
Метод Халецкого
Систему линейных уравнений можно записать в матричном виде:
,
где A – квадратная матрица, x и b – векторы-столбцы.
Матрицу A можно представить в виде A=BC , где
.
Тогда элементы bij и cij будут определяться по формулам
и
Отсюда искомый вектор x может быть вычислен из цепи уравнений
By=b, Cx=y.
Так как матрицы B и C треугольные, то системы легко решаются, а именно:
и
Из формул видно, что числа yi выгодно вычислять вместе с коэффициентам cij . Эта схема вычислений называется схемой Халецкого.
Глава 2. Блок- схема программы
Блок-схема метода Халецкого
Приложение
Программный код
Form1.frm
Dim strFileType As String
Dim X(1 To 10) As Double
Dim B(1 To 10) As Double
Public N Ateger
Dim A(10, 11) As Double
Private Sub about_Click()
Form2.Show
End Sub
Private Sub Command2_Click()
Form5.Show
End Sub
Private Sub Command5_Click()
If N = 2 Then
Label3 = ""
Form3.Show
kl = -10
Y = (A(1, 3) - A(1, 2) * kl) / A(1, 1)
X1 = 10
Y1 = (A(1, 3) - A(1, 2) * X1) / A(1, 1)
Form3.Picture1(1).Line (5 + kl, 5 - Y)-(5 + X1, 5 - Y1), RGB(0, 255, 0)
kl = -10
Y = (A(2, 3) - A(2, 2) * kl) / A(2, 1)
X1 = 10
Y1 = (A(2, 3) - A(2, 2) * X1) / A(2, 1)
Form3.Picture1(1).Line (5 + kl, 5 - Y)-(5 + X1, 5 - Y1), RGB(0, 0, 255)
Else: Label3 = "Error"
End If
End Sub
Private Sub Label13_Click()
End Sub
Private Sub CommonDialog1_Click()
End Sub
Private Sub Command1_Click()
N = Text1.Text
For I = 1 To N
For j = 1 To N + 1
If FlxGrdDemo.TextMatrix(I, j) = "" Then
ret = MsgBox("Обнаружена ошибка во входных данных.", vbCritical, "Ошибка")
Exit For
Exit For
End If
A(I, j) =dDemo.TextMatrix(I, j)
Next
Next
For I = 1 To N
For j = 1 To N
If A(I, j) < 0 Then
Picture1.Print Format(A(I, j), " 0.00"); "*x"; "("; I; j; ")"; " ";
Else
Picture1.Print "+"; Format(A(I, j), " 0.00"); "*x"; "("; I; j; ")"; " ";
End If
Next j
B(I) = A(I, N + 1)
Picture1.Print "="; Format(B(I), " 0.00")
Picture1.Print
Next I
'///
On Error GoTo Handler
Call Eq_Sol(A, B, X, N)
Open App.Path & "\otvet.txt" For Output As #2
Print #2, "Результаты решения СЛАУ методом Халецкого:"
For I = 1 To N
Print #2, "X=" & X(I)
Picture2.Print "X"; I; " = "; Format(X(I), " 0.00")
Picture2.Print 'Пустая строка
Next
Close #2
Handler:
If Err.Number <> 0 Then
ret = Msgox("Обнаружена ошибка во входных данных.", vbCritical, "Ошибка")
End If
End Sub
Private Sub open_Click()
Form4.Show
End Sub
Private Sub quit_Click()
End
End Sub
Private Sub resh_Click()
Command1 = True
End Sub
Private Sub FlxGrdDemo_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case vbKeyReturn
' Когда пользователь нажимает
' клавишу Enter, этот код
' осуществляет переход к
' следующей ячейке или ряду
With FlxGrdDemo
If .Col + 1 <= .Cols - 1 Then
.Col = .Col + 1
ElseIf .Row + 1 <= .Rows - 1 Then
.Row = .Row + 1: .Col = 0
Else
.Row = 1: .Col = 0
End If
End With
Case vbKeyBack
' Удаляет предыдущий символ при
' нажатии клавиши Backspace
With FlxGrdDemo
If Trim(.Text) <> " " Then _
.Text = Mid(.Text, 1, Len(.Text) - 1)
End With
Case Is < 32
' Не разрешает вводить непечатные символы
Case Else ' Разрешает печатать все
With FlxGrdDemo
.Text = .Texthr(KeyAscii)
End With
End Select
End Sub
Private Sub FlxGrdDemo_KeyUp(KeyCode As Integer, _
Shift As Integer)
Select Case KeyCode
Case vbKeyC And Shift = 2 ' Ctrl + C
' Копирует символы
Clipboard.Clear
Clipboard.SetText FlxGrdDemo.Text
KeyCode = 0
Case vbKeyV And Shift = 2 ' Ctrl + V
' Вставляет символы
FlxGrdDemo.Text = Clipboard.GetText
KeyCode = 0
Case vbKeyX And Shift = 2 ' Ctrl + X
' Вырезает символы
Clipboard.Clear
Clipboard.SetText FlxGrdDemo.Text
FlxGrdDemo.Text = " "
KeyCode = 0
Case vbKeyDelete
' Удаляет символы
FlxGrdDemo.Text = " "
End Select
End Sub
Private Sub Text1_Change()
FlxGrdDemo.Rows = 1 + Text1.Text
FlxGrdDemo.Cols = 2 + Text1.Text
End Sub
Form2.frm
Private Sub Command1_Click()
Form4.Show
End Sub
Private Sub OKButton_Click()
Form1.Show
Unload Me
End Sub
Form3.frm
Private Sub Command1_Click()
Unload Form3
End Sub
Sub Eq_Sol(A() As Double, B() As Double, X() As Double, N As Integer)
Dim L(1 To 10, 1 To 10), R(1 To 10, 1 To 10), Y(1 To 10)
Dim I As Integer, j As Integer, k As Integer
For I = 1 To N
L(I, 1) = A(I, 1)
Next I
Y(1) = B(1) / A(1, 1)
For I = 2 To N
R(I, I) = 1
j = 2
Do
L(I, j) = A(I, j)
R(I, j) = 0
For k = 1 To j - 1
L(I, j) = L(I, j) - L(I, k) * R(k, j)
Next
j = j + 1
Loop Until j > I
R(I, I) = 1
Do
L(I, j) = 0
R(I, j) = A(I, j)
Y(I) = B(I)
For k = 1 To I - 1
R(I, j) = R(I, j) - L(I, k) * R(k, j)
Y(I) = Y(I) - L(I, k) * Y(k)
Next
R(I, j) = R(I, j) / L(I, I)
Y(I) = Y(I) / L(I, I)
j = j + 1
Loop Until j > N
Next
X(N) = Y(N)
For I = N - 1 To 1 Step -1
X(I) = Y(I)
For k = I + 1 To N
X(I) = X(I) - R(I, k) (k)
Next
Next
End Sub
1. ГОСТ 2.105–95. Общие требования к текстовым документам [Текст]. – Взамен ГОСТ 2.105-79, ГОСТ 2.906-71; введ. 1996-07-01.
2. ГОСТ 19.701–90. Схемы алгоритмов программ, данных и систем [Текст]. – Взамен ГОСТ 19.002-80; введ. 1992-01-01.
3. Лекции по информатике.
4. Электронный учебник «Visual Basic с нуля» 2004г.
К работе прилагается все исходники. Есть приложения.
К работе прилагается все необходимое для сдачи.
К работе прилагается программа с исходным кодом.
К работе прилагается презентация.
Тема: | «Решение слау методом Халецкого VBasic» | |
Раздел: | Информатика | |
Тип: | Курсовая работа | |
Страниц: | 28 | |
Цена: | 1950 руб. |
Закажите авторскую работу по вашему заданию.
- Цены ниже рыночных
- Удобный личный кабинет
- Необходимый уровень антиплагиата
- Прямое общение с исполнителем вашей работы
- Бесплатные доработки и консультации
- Минимальные сроки выполнения
Мы уже помогли 24535 студентам
Средний балл наших работ
- 4.89 из 5
написания вашей работы
У нас можно заказать
(Цены могут варьироваться от сложности и объема задания)
682 автора
помогают студентам
42 задания
за последние сутки
10 минут
время отклика
Метод Халецкого для СЛАУ
Курсовая работа:
Метод Гаусса для решения СЛАУ
Лабораторная работа:
Лабораторные работы № 1-8 по Численным методам. (БирГСПА) excel
Дипломная работа:
Обучающая программа по «численным методам в физике»
Дипломная работа:
Приложения координатно-векторного метода к решению школьных задач