Anda di halaman 1dari 11

BAB I

PENDAHULUAN

1.1 Tujuan Praktikum


1.1.1 Dapat menentukan penyelesaian sistem persamaan linear dengan
metode Gauss.
1.1.2 Mencari besarnya kesalahan dari suatu perhitungan solusi sistem
persamaan linear dengan metode Gauss.
1.2 Permasalahan
Buat program Sistem Persamaan Linier menggunakan metode Gauss untuk
mencari nilai x0, x1, x2 dengan masukan matriks sebagai berikut.
[25 5 1] [x0]

[106.8]

[64 8 1] [x1] = [177.2]


[144 12 1] [x2]

[279.2]

BAB II
DASAR TEORI

Banyak sistem riil dalam berbagai bidang yang dapat dimodelkan dalam
bentuk sistem persamaan linear, dengan melibatkan banyak variabel yang tidak
mungkin diselesaikan secara manual. Untuk menangani sistem seperti itu, terdapat
beberapa metode penyelesaian sistem persamaan linear tersebut secara efisien dan
akurat. Dalam modul ini disajikan metode yang populer yaitu : metode eliminasi
Gauss. Sistem n persamaan dan n variabel dituliskan sebagai berikut:

Atau =
2.1 Metode eliminasi Gauss
Dalam eliminasi Gauss, sistem persamaan ditransformasikan ke dalam
sistem ekuivalen dalam bentuk segitiga. Jadi matriks koefisien
dikonversikan ke matriks segitiga, bentuk baru ini mudah disubstitusikan
balik.
Algoritma :
MASUKAN
Dimensi matriks
Matriks koefisien
Larik kanan
KELUARAN : larik penyelesaian
1. Untuk j = 1 sampai n
1.1 Jika ai,j = 0
1.1.1 cari nilai ai+1, j <> 0 untuk i + 1 n.
1.1.2 jika tak ditemukan ai+1, j <> 0, keluar, tidak ada solusi
2

1.1.3 untuk j = i sampai n, tukar ai,j dengan ai+1, j


1.2 untuk j = i + 1 sampai n
1.2.1 mj = aj,i / ai,j
1.2.2 untuk k = i sampai n
ai,j,k = aj,k - mj * ai,k
1.2.3 yj = yj - mj * yi
2. xn = bn / an,n
3. untuk i = n 1 sampai i = 1
3.1 ax = 0,0
3.2 untuk j = i + 1 sampai n
ax = ax + ai,j * xj
3.3 xi = (yj - ax) / ai,i
4. selesai

BAB III
PEMBAHASAN
3.1 Sourcode program spl_gauss.pas
{

Nama
NIM
Nama program
Deskripsi program

:
:
:
:

Muhammad Lukman Fariq


24010313120024
spl_gauss.pas
program eliminasi gauss}

Program spl_gauss;
uses crt;
type
Mat55 = array[0..5,0..5] of real;
Mat56 = array[0..5,0..6] of real;
var
A : Mat55;
G : Mat56;
b,x : array [0..5] of real;
factor, dummy : real;
i, j, k, n : integer;
procedure inisialisasi;
begin
{ inputan matriks
[25 5
1][x1] [106.8]
[64 8
1][x2]= [177.2]
[144 12 1][x3] [279.2]
}
A[0][0] := 25;
A[0][1] := 5;
A[0][2] := 1;
A[1][0] := 64;
A[1][1] := 8;
A[1][2] := 1;
A[2][0] := 114;
A[2][1] := 12;
A[2][2] := 1;
b[0] := 106.8;
b[1] := 177.2;
b[2] := 279.2;
n := 3;
end;
begin

clrscr;
inisialisasi;
{ bentuk matriks gabungan }
for i :=0 to n-1 do
for j:= 0 to n-1 do
G[i][j] := A[i][j];
for j :=0 to n-1 do
G[j][n] := b[j];
writeln('matriks gabungan : ');
writeln;
for i := 0 to n-1 do
begin

for j := 0 to n do
write(G[i][j]:10:3);
writeln;

end.

end;
writeln;
{Proses Eliminasi }
for i:= 0 to n-2 do
begin
for j:= i+1 to n-1 do
begin
factor := G[j][i] / G[i][i];
for k := i to n do
G[j][k] := G[j][k] - factor * G[i][k];
end;
end;
writeln('matriks setelah eliminasi : ');
writeln;
for i:= 0 to n-1 do
begin
for j := 0 to n do
write(G[i][j]:10:3);
writeln;
end;
{Substitusi Mundur }
x[n-1] := G[n-1][n]/G[n-1][n-1];
for k:= 0 to n-2 do
begin
i := n-2-k;
dummy := G[i][n];
for j := i+1 to n-1 do
dummy := dummy - G[i][j] * x[j];
x[i] := dummy /G[i][i];
end;
writeln;
writeln('Hasil akhir :');
for i := 0 to n-1 do
writeln('x[',i:2,'] = ', x[i]:10:3);
readkey;

3.2 Cara Jalan Program spl_gauss.paas


3.3 Perhitungan Manual Metode Gauss
Langkah-langkah penyelesaian pencarian nilai x0, x1, x2 dengan metode
Gauss, sebagai berikut:
3.3.1

Proses eliminasi
n = 3, inputan matriks yang sudah digabung
G[0][0]...G[0][3] =

[25

5 1

106.8]

G[1][0]...G[1][3] =

[64

8 1

177.2]

G[2][0]...G[2][3] =

[144 12 1

279.2]

Untuk iterasi iterasi i = 0 sampai n-2 = 1


1. i = 0,
Untuk iterasi j = i + 1 = 1 sampai n 1 = 2
a. j = 1
factor

: G[j][i] / G[i][i]
: G[1][0] / G[0][0]
: 64 / 25
: 2,56

Untuk iterasi k = i = 0 sampai n = 3


a. k = 0
G[j][k]

: G[j][k] factor * G[i][k]

G[1][0]

: G[1][0] factor * G[0][0]


: 64 - 2,56 * 25
:0

b. k = 1
G[j][k]

: G[j][k] factor * G[i][k]

G[1][1]

: G[1][1] factor * G[0][1]


: 8 - 2,56 * 5
: -4,8

c. k = 2
G[j][k]

: G[j][k] factor * G[i][k]

G[1][2]

: G[1][2] factor * G[0][2]


: 1 - 2,56 * 1
: -1,56

d. k = 3
G[j][k]

: G[j][k] factor * G[i][k]

G[1][3]

: G[1][3] factor * G[0][3]


: 177,2 - 2,56 * 106,8
: -96,208

iterasi k berhenti karena sudah sampai 3

b. j = 2
factor

: G[j][i] / G[i][i]
: G[2][0] / G[0][0]
: 114 / 25
: 4,56

Untuk iterasi k = i = 0 sampai n = 3


e. k = 0
G[j][k]

: G[j][k] factor * G[i][k]

G[2][0]

: G[2][0] factor * G[0][0]


: 114 - 4,56 * 25
:0

f. k = 1
G[j][k]

: G[j][k] factor * G[i][k]

G[2][1]

: G[2][1] factor * G[0][1]


: 12 - 4,56 * 5
: -10,8

g. k = 2
G[j][k]

: G[j][k] factor * G[i][k]

G[2][2]

: G[2][2] factor * G[0][2]


: 1 - 4,56 * 1
: -3,56

h. k = 3
G[j][k]

: G[j][k] factor * G[i][k]

G[2][3]

: G[2][3] factor * G[0][3]


: 279,2 - 4,56 * 106,8
: -207,8

iterasi k berhenti karena sudah sampai 3


iterasi j berhenti karena sudah sampai 2
2. i = 1,
Untuk iterasi j = i + 1 = 2 sampai n 1 = 2
a. j = 2
factor

: G[j][i] / G[i][i]

: G[2][1] / G[1][1]
: -10,8 / -4,8
: 2,25
Untuk iterasi k = i = 1 sampai n = 3
i. k = 1
G[j][k]

: G[j][k] factor * G[i][k]

G[2][1]

: G[2][1] factor * G[1][1]


: -10,8 2,25 * -4,8
:0

j. k = 2
G[j][k]

: G[j][k] factor * G[i][k]

G[2][2]

: G[2][2] factor * G[1][2]


: -3,56 2,25 * -1,56
: -0,05

k. k = 3
G[j][k]

: G[j][k] factor * G[i][k]

G[2][3]

: G[2][3] factor * G[1][3]


: -207,808 2,25 * -96,208
: 8,660

iterasi k berhenti karena sudah sampai 3


iterasi j berhenti karena sudah sampai 2
iterasi i berhenti karena sudah sampai 1
Hasil akhir dari proses ini adalah terbentuknya matriks segitiga
atas

3.3.2

G[0][0]...G[0][3] =

[25 5

G[1][0]...G[1][3] =

[0 -4,8 -1,56 -96,208]

G[2][0]...G[2][3] =

[0

1
-0,05

106.8 ]
8,66 ]

Proses substitusi mundur


Matriks setelah eliminasi diproses untuk mendapatkan x0, x1, x2
x[n-1] : G[n-1][n]/G[n-1][n-1]
x[2]

: G[2][3] / G[2][3]

: 8,66 / -0,05
: -173,2
Untuk iterasi k = 0 sampai n - 2 = 1
1. k = 0
i=n2k
i=32-0=1
dummy

: G[i][n]
: G[1][3]
: -96,208

Untuk iterasi j = i + 1 = 2 sampai n 1 = 2


a. j = 2
dummy : dummy G[i][j] * x[j]
: -96,208 G[1][2] * x[2]
: -96,208 (-1,56) * -173,2
: -366,4
iterasi j berhenti karena sudah sampai 2
x[i]

: dummy / G[i][j]

x[1]

: -366,4 / -4,8
: 76,33

2. k = 1
i=n2k
i=32-1=0
dummy

: G[i][n]
: G[0][3]
: 106,8

Untuk iterasi j = 0 + 1 = 1 sampai n 1 = 2


a. j = 1
dummy : dummy G[i][j] * x[j]
: 106,8 G[0][1] * x[1]
: 106,8 5 * -76,33
: -274,867

b. j = 2
dummy : dummy G[i][j] * x[j]
: 106,8 G[0][2] * x[2]
: 106,8 1 * -173,2
: -101,667
iterasi j berhenti karena sudah sampai 2
x[i]

: dummy / G[i][j]

x[0]

: -101,667 / 25
: -4,067

iterasi k berhenti karena sudah sampai 1


Didapatkan hasil akhir untuk
x[0] = -4,067
x[1] = 76,33
x[2] = -173,2
3.4 Screenshot program spl_gauss.pas

BAB IV
KESIMPULAN

10

Daftar Pustaka
Sasongko, Priyo Sidik. 2013. Modul Praktikum Metode Numerik. Semarang:
Jurusan Ilmu Komputer /Informatika, Undip.

11

Anda mungkin juga menyukai