Filed under: Pemrograman Pascal
Sekedar Sharing buat kawan-kawan yang sedang belajar pascal… (mohon komengnya)
Diketahui persamaan sebagai berikut:
setelah diurutkan menjadi:
Ketentuan untuk mengurutkannya:
1. Persamaan yang memiliki nilai x1 yang tertinggi adalah berada yang paling atas
2. Persamaan yang memiliki nilai x2 yang tertinggi adalah berada di tengah
3. Persamaan yang memiliki nilai x3 yang tertinggi adalah yang paling bawah
Dari yang telah diurutkan ditas kita dapat menyimpukan:
a11=4, a12=-2, a13=-1, b1:=40
a21=-1, a22=6, a23=-2, b2:=28
a31=1, a32=-2, a33:=12, b3:=-86
(pernyataan a11,a12….. di dapat dari buku yang dipelajari)
Berikut Kode-kodenya pada pascal:
Program Metode_gauss_siedle;
Uses crt;
var
cetak:string[15];
i:integer;
ite,tol:real;
a11,a12,a13,a21,a22,a23,a31,a32,a33,b1,b2,b3:real;
p,q,r,x1,x2,x3,er1,er2,er3,pros:real;
BEGIN
clrscr;
TextColor(7);
writeln(‘PROGRAM GAUSS-SIDLE’);
WRITELN(‘==================================================’);
WRITELN;
a11:=4;a12:=-2;a13:=-1;b1:=40;
a21:=-1;a22:=6;a23:=-2;b2:=28;
a31:=1;a32:=-2;a33:=12;b3:=-86;
ite:=20;tol:=0.000000001;
writeln(‘Bentuk Persamaan:’);
writeln(a11:2:0,’x',a12:2:0,’y',a13:2:0,’z=’,b1:2:0);
writeln(a21:2:0,’x+’,a22:2:0,’y',a23:2:0,’z=’,b2:2:0);
writeln(a31:2:0,’x',a32:2:0,’y+’,a33:2:0,’z=’,b3:2:0);
writeln;
writeln(‘TABEL PENYELESAIAN:’);
writeln( ‘i | x1 | x2 | x3 | Ket ‘);
writeln(‘===========================================================’);
x1:=0;
x2:=0;
x3:=0;
repeat
i:=i+1;
p:=x1;
x1:=(b1-(a12*x2)-(a13*x3))/a11;
q:=x2;
x2:=(b2-(a21*x1)-(a23*x3))/a22;
r:=x3;
x3:=(b3-(a31*x1)-(a32*x2))/a33;
if (i=1) then
begin
er1:=1;er2:=1;er3:=1;
end
else
begin
er1:=abs((x1-p)/x1)*1;
er2:=abs((x2-q)/x2)*1;
er3:=abs((x3-r)/x3)*1;
end;
if (i>=ite) or ((er1<tol) and (er2<tol) and (er3<tol)) then
cetak:=’Proses Stop’
else
cetak:=’Proses Lanjut’;
gotoxy(2,11+i);
writeln(i);
gotoxy(8,11+i);
writeln(x1:2:8);
gotoxy(22,11+i);
writeln(x2:2:8);
gotoxy(36,11+i);
writeln(x3:2:8);
gotoxy(50,11+i);
writeln(cetak);
until (cetak=’Proses Stop’);
writeln;
writeln(‘Hasil :’);
write(‘x1 = ‘,x1:2:6);
write(‘ x2 = ‘,x2:2:6);
writeln(‘ x3 = ‘,x3:2:6);
writeln;
writeln(‘Pembuktian Hasil Persamaan’);
writeln(a11:2:0,’[',x1:2:6,']‘,a12:2:0,’[',x2:2:6,']‘,a13:2:0,’[',x3:2:6,']=’,b1:2:0);
writeln(a21:2:0,’[',x1:2:6,']+’,a22:2:0,’[',x2:2:6,']‘,a23:2:0,’[',x3:2:6,']=’,b2:2:0);
writeln(a31:2:0,’[',x1:2:6,']‘,a32:2:0,’[',x2:2:6,']+’,a33:2:0,’[',x3:2:6,']=’,b3:2:0);
readkey;
end.
hasil program:
Untuk mendownload file .pas, .exe dan sebagai hasil perbandingannya .xls silahkan download di sini
Leave a Comment so far
Leave a comment


