Prosedur merupakan subprogram yang dapat dipanggil dari program utama. Dokumen menjelaskan penggunaan prosedur dalam pemrograman Pascal dengan memberikan contoh deklarasi prosedur, pengiriman parameter secara nilai dan referensi, serta contoh kode program penggunaan prosedur.
2. Tujuan Mempelajari Prosedur
Mempelajari pemecahan program ke dalam modul-
modul program
Procedure merupakan sub program yang berdiri
sendiri yang dapat dipanggil dari program utama.
Deklarasi prosedur :
PROCEDURE <Nama_prosedur>
(<Daftar_parameter_formal>);
<Bagian_deklarasi>
Begin
<Bagian _pernyataan>
End;
3. Teori
Dalam prosedur atau fungsi dikenal adanya
parameter. Parameter adalah suatu nilai atau
variabel yang akan dilewatkan dalam prosedur
atau fungsi.
Pengiriman paramter dalam prosedur atau fungsi
dibedakan menjadi 2 yaitu parameter nilai dan
parameter referensi.
Pelewatan parameter secara nilai dimaksudkan
jika parameter yang diletakan dimasudkan tidak
untuk diubah oleh prosedur atau fungsi sekalipun
perubahan telah terjadi di dalam prosedur atau
fungsi tersebut.
4. Teori
Sedangkan parameter referensi dimasudkan
unutk mengubah nilai atau variabel
sekeluarnya dari prosedur atau fungsi.
Perbedaan cara pengiriman parameter
didalam prosedur atau fungsi terletak pada
deklarasi prosedur atau fungsinya.
5. Teori
Contoh deklarasi prosedur dengan pengiriman
parameter secara refensi :
Procedure Tukar(var x,y : real);
Untuk mengubah sifat pengiriman parameter
secara nilai, tinggal diubah deklarasi prosedur
dengan menghilangkan var dalam kepala
prosedur sehingga menjadi :
Procedure Tukar(x,y : real);
6. Lab
Program Prosedur_aktual;
Uses crt;
Var
Y:char; m:byte;
Procedure Tampil(x:char; n:byte);
Var
i:integer;
Begin
for i := 1 to n do
Write(x);
Writeln;
End;
Begin
Tampil('+',8);
Tampil('*',10);
Tampil('A',5);
y:='B';
m:=11;
Tampil(y,m);
readln;
End.
Hasil :
7. Hasil :
Program Prosedur_reference;
Uses crt;
Var
a,b,c : integer;
Procedure Coba(x,y:integer; var z:integer);
Begin
x:=x+1; y:=y+1; z:=x+y;
End;
Begin
a:=2;b:=3;c:=0;
Coba(a,b,c);
Writeln('a = ',a);
Writeln('b = ',b);
Writeln('c = ',c);
readln;
End.
Lab 2
8. Lab 3program procedure_tukar_data;
var
a, b : real;
procedure info;
begin
writeln('========================================');
writeln('** Program Tukar Data dengan Procedure**');
writeln('========================================');
writeln;
end;
procedure tukar(var x,y : real);
var
tamp : real;
begin
tamp := x; x := y; y := tamp;
end;
Begin
info;
a := 12.33;
b := 67.98;
writeln; writeln('Sebelum memanggil prosedur Tukar');
writeln('a = ',a:7:2,' b = ',b:7:2);
tukar(a,b);
writeln;
writeln('Setelah memanggil prosedur Tukar');
writeln('a = ',a:7:2,' b = ',b:7:2);
readln;
End.