Anda di halaman 1dari 15

Filosofi Pemrograman Dasar

Pemrograman Terstruktur
(Paradigma: “input  process  output”)

Contoh:
1. Pemrogram untuk SPAL
2. Metode Eliminasi Gauss
Konstruksi SUBPROGRAM - Analogi dari Pemrograman Persamaan ABC:

Program Persamaan_ABC;

Var
A,B,C: Extended;
D,X1,X2: Extended;

Begin
{INPUT:}
Write('A = '); Readln(A);
Write('B = '); Readln(B);
Write('C = '); Readln(C);

{PROSES:}
Unit Process
D := SQR(B) - 4*A*C; Unit Operation
X1 := (-B + SQRT(D))/(2*A); Sub-Program
X2 := (-B - SQRT(D))/2/A; Procedure/Function

{OUTPUT:}
Writeln('X1 = ',X1:0:4);
Writeln('X2 = ',X2:0:4);

Readln;
End.
Transfer dari “Procces Block” ke “Unit Process” (#1):

{PROCESS:}
D := SQR(B) - 4*A*C;
X1 := (-B + SQRT(D))/(2*A);
X2 := (-B - SQRT(D))/2/A;

Suatu SUBPROGRAM “Unit Process”


yang disebut
Procedure atau Function Argumen OUTPUT
Nama Unit Process
Argumen INPUT

Procedure Hitung_X1_dan_X2(A,B,C: Extended; var X1,X2: Extended);


Transfer dari “Procces Block” ke “Unit Process” (#2):

D := SQR(B) - 4*A*C;
X1 := (-B + SQRT(D))/(2*A);
X2 := (-B - SQRT(D))/2/A;

Letaknya DI DALAM
Program Utama

Procedure Hitung_X1_dan_X2(A,B,C: Extended; var X1,X2: Extended);


Var
D: Extended;
Begin
D := SQR(B) - 4*A*C;
X1 := (-B + SQRT(D))/(2*A);
X2 := (-B - SQRT(D))/2/A;
End;

Letaknya DI LUAR
Program Utama
Maka, Listing Program tentang Perhitungan Persamaan ABC:
Program Persamaan_ABC;
Var
A,B,C: Extended;
D,X1,X2: Extended;
Begin
{INPUT:}
Write('A = '); Readln(A);
Write('B = '); Readln(B);
Write('C = '); Readln(C);


{PROCESS:}
D := SQR(B) - 4*A*C;
X1 := (-B + SQRT(D))/(2*A); Blok Proses Komputasi
X2 := (-B - SQRT(D))/2/A;
{OUTPUT:}
Writeln('X1 = ',X1:0:4);
Writeln('X2 = ',X2:0:4);
Readln;
End.
Menjadi Program dengan “Procedure sebagai UNIT PROSES” berikut ini:
Program Persamaan_ABC;
Var
A,B,C: Extended;


X1,X2: Extended;

Procedure Hitung_X1_dan_X2(A,B,C: Extended; Var X1,X2: Extended);


Var
Blok PROSSES D: Extended;
Yang diubah Begin
menjadi D := SQR(B) - 4*A*C;
PROCEDURE X1 := (-B + SQRT(D))/(2*A);
X2 := (-B - SQRT(D))/2/A;
End;
Begin
Pemanggilan {INPUT:}
(call) Write('A = '); Readln(A);
Write('B = '); Readln(B);
Write('C = '); Readln(C);
{PROCESS:}
Hitung_X1_dan_X2(A,B,C,X1,X2);
{OUTPUT:}
Writeln('X1 = ',X1:0:4);
Writeln('X2 = ',X2:0:4);
Readln;
End.
Listing PROGRAM dalam Visual Basic
(tanpa SUBPROGRAM  SUB)
Listing PROGRAM dalam FORTRAN-77
(tanpa SUBPROGRAM  SUBROUTINE)
Tentang membaca DATA dari FILE (#1)
(Pemrograman FORTRAN-77)

1. Didahului dengan MEMBUKA FILE

2. Diakhiri dengan MENUTUP FILE


Membaca DATA dari Keyboard (#2)
(Pemrograman FORTRAN-77)
Membaca DATA dari Keyboard → FILE (#3)
(Pemrograman FORTRAN-77)
Lebih jauh tentang membaca DATA dari FILE (#1)
(Pemrograman Ezy PASCAL)

1. Didahului dengan MEMBUKA FILE

Assign(ElmGauss,'ELMGAUSS.DAT');
Reset(ElmGauss);
Catatan: Variabel “ElmGauss” dideklarasikan sebagai “Text”
ElmGauss: Text;

2. Diakhiri dengan MENUTUP FILE

Assign(ElmGauss,'ELMGAUSS.DAT');
Reset(ElmGauss);
Membaca DATA dari Keyboard (#2)
(Pemrograman Ezy PASCAL)

{ ---> Seksi INPUT <--- }


{<a> Masukkan "N = Jumlah Persamaan"}
Write('Jumlah Persamaan: ');
Readln(N);

{<b> Masukkan harga komponenen MATRIKS [A] dan VEKTOR [b]}


For I:= 1 to N do
Begin
For J:= 1 to N do
Begin
Write('A[',I,',',J,'] = ');
Readln(A[I,J]);
End;
Write('b(',I,') = ');
Readln(b[I]);
End;
Membaca DATA dari FILE (#2)
(Pemrograman Ezy PASCAL)

{ ---> Seksi INPUT <--- }


{<a> Masukkan "N = Jumlah Persamaan"}
Readln(ElmGauss,N);

{<b> Masukkan harga komponenen MATRIKS [A] dan VEKTOR [b]}


For I:= 1 to N do
Begin
For J:= 1 to N do
Begin
Read(ElmGauss,A[I,J]);
End;
Readln(ElmGauss,b[I]);
End;
Format DATA dalam FILE “ELMGAUSS.DAT”
(Pemrograman FORTRAN-77 dan Ezy PASCAL)

4
-3 2 5 1 5
1 3 5 4 13
2 1 1 3 7
9 -5 4 3 11
Dalam bentuk: Augmented Matrix

Anda mungkin juga menyukai