4
Dim Am(10, 10), xs(10), bv(10) As Double deklarasi aja 10,10 pesen Sub ElimGauss(ByRef A(), x(), b() As Double, n As Integer) dijumpai di bk biru bb 4 el gaus 'Dim A(10, 10) As Double hmpir2 mirip skl 'Dim x(10), b(10) As Double Dim i, j, k As Integer Dim pivot, mult, top As Double 'SUBROUTINE Eliminasi Gauss 'Begin the subprogram For j = 1 To n - 1 ' Begin [outer For..Next loop] ' Begin the "Triangularisation" pivot = A(j, j) For i = j + 1 To n ' Begin [middle For..Next loop] mult = A(i, j) / pivot For k = j + 1 To n A(i, k) = A(i, k) - mult * A(j, k) Next b(i) = b(i) - mult * b(j) Next ' End [middle For..Next loop] Next ' End [outer For..Next loop] ' End of Triangularisation

Dim Am

Embed Size (px)

DESCRIPTION

vvdv

Citation preview

Page 1: Dim Am

Dim Am(10, 10), xs(10), bv(10) As Double deklarasi aja 10,10 pesen

Sub ElimGauss(ByRef A(), x(), b() As Double, n As Integer) dijumpai di bk biru bb 4 el gaus

'Dim A(10, 10) As Double hmpir2 mirip skl

'Dim x(10), b(10) As Double

Dim i, j, k As Integer

Dim pivot, mult, top As Double

'SUBROUTINE Eliminasi Gauss

'Begin the subprogram

For j = 1 To n - 1

' Begin [outer For..Next loop]

' Begin the "Triangularisation"

pivot = A(j, j)

For i = j + 1 To n

' Begin [middle For..Next loop]

mult = A(i, j) / pivot

For k = j + 1 To n

A(i, k) = A(i, k) - mult * A(j, k)

Next

b(i) = b(i) - mult * b(j)

Next

' End [middle For..Next loop]

Next

' End [outer For..Next loop]

' End of Triangularisation

' *--- Substitusi Balik ---*

x(n) = b(n) / A(n, n)

For i = n - 1 To 1 Step -1

Page 2: Dim Am

top = b(i)

For k = i + 1 To n

top = top - A(i, k) * x(k)

Next

x(i) = top / A(i, i)

Next

End Sub

Sub SPAL2P()

Dim i, j, k, neq As Integer deklarasi fgsi lokal dari spl2p ke subend

'

' INPUT "element" dari matriks "A": inputnua 2 baris. D kolom

neq = 2

For i = 1 To neq

For j = 1 To neq

Am(i, j) = Cells(i + 7, 15 + j)

Next

Next

' INPUT "element" dari vektor "b":

For i = 1 To neq

bv(i) = Cells(i + 7, 22)

Next

Call ElimGauss(Am, xs, bv, 2)

' Hasil dan Tampilan ke Excel:

For i = 1 To neq

Cells(i + 7, 19) = xs(i)

Page 3: Dim Am

Next

End Sub

Sub SPALM2P()

'

' INPUT "element" dari matriks "A":

neq = 2

For i = 1 To neq

For j = 1 To neq

A(i, j) = Cells(i + 13, 2 + j)

Next

Next

' INPUT "element" dari vektor "b":

For i = 1 To neq

b(i) = Cells(i + 13, 9)

Next

'

Range(Cells(14, 6), Cells(15, 6)).Select

' Sama dengan: Range("F14:F15").Select

' Range("Cells(14, 6), Cells(15, 6)") = "=MMULT(MINVERSE(C14:D15),I14:I15)"

Selection.FormulaArray = "=MMULT(MINVERSE(C14:D15),I14:I15)"

' Call ElimGauss(2)

' Hasil dan Tampilan ke Excel:

' For i = 1 To neq

' Cells(i + 13, 6) = x(i)

' Next

Page 4: Dim Am

End Sub