Курсовая работа

«Решение слау методом Халецкого VBasic»

  • 28 страниц(ы)
  • 2003 просмотров
фото автора

Автор: navip

Введение 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
Узнайте стоимость
написания вашей работы

Не подошла эта работа?

Воспользуйтесь поиском по базе из более чем 40000 работ

Другие работы автора
Наши услуги
Дипломная на заказ

Дипломная работа

от 8000 руб.

срок: от 6 дней

Курсовая на заказ

Курсовая работа

от 1500 руб.

срок: от 3 дней

Отчет по практике на заказ

Отчет по практике

от 1500 руб.

срок: от 2 дней

Контрольная работа на заказ

Контрольная работа

от 100 руб.

срок: от 1 дня

Реферат на заказ

Реферат

от 700 руб.

срок: от 1 дня

682 автора

помогают студентам

23 задания

за последние сутки

10 минут

среднее время отклика

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