Курсовая работа
«Решение слау методом Халецкого 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 автора
помогают студентам
23 задания
за последние сутки
10 минут
среднее время отклика
Курсовая работа
«Решение системы линейных уравнений методом Халецкого»Курсовая работа
«Метод Халецкого для СЛАУ»Курсовая работа
«Метод Гаусса для решения СЛАУ»Лабораторная работа
«Лабораторные работы № 1-8 по Численным методам. (БирГСПА) excel»Дипломная работа
«Обучающая программа по «численным методам в физике»»