PROSEDUR DALAM ALGORITMA
A.
Pendefinisian
Prosedur
1. Pendefinisian prosedur artinya
menuliskan nama prosedur, mendeklarasikan nama-nama konstanta, peubah dan tipe
(jika ada) dan menjabarkan rangkaian aksi yang dilakukan sehingga perlu
mendefinisikan keadaan awal dan keadaan akhir dari prosedur tersebut. Pada dasarnya, struktur prosedur sama dengan
struktur algoritma yang sudah ada, yaitu : ada bagian judul (header) yang
terdiri atas nama prosedur dan deklarasi parameter (jika ada).
2. Contoh
prosedur yang membaca panjang, lebar dan tinggi untuk menghitung volume kubus.
Procedure
hitung_volume_kubus
{Menghitung volume
kubus dengan rumus V = panjang x lebar x tinggi}
{K.awal : sembarang}
{K.akhir : volume kubus
tercetak}
DEKLARASI
panjang : real
lebar : real
tinggi : real
volume : real
ALGORITMA
read
(panjang,lebar,tinggi)
write (volume)
B.
Manfaat
Prosedur
Prosedur
termasuk dalam merupakan sub program yang sangat bermanfaat dalam pemrograman,
terutama untuk program atau proyek yang besar. Sehingga memilki manfaat sebagi
berikut :
1.
Meningkatkan readibility, yaitu mempermudah
pembacaan program
2.
Meningkatkan modularity, yaitu memecah
sesuatu yang besar menjadi modul-modul atau bagian-bagian yang lebih kecil
sesuai dengan fungsinya, sehingga mempermudah pengecekan, testing dan lokalisasi kesalahan.
3.
Meningkatkan reusability, yaitu suatu
sub program dapat dipakai berulang kali dengan hanya memanggil sub program
tersebut tanpa menuliskan perintah-perintah yang semestinya diulang-ulang.
C.
Nama
Lokal dan Nama Global
1.
Nama Lokal
Nama
– nama (konstanta, peubah,tipe, dan lain-lain) yang dideklarasikan di dalam
prosedur (termasuk parameter, jika ada) hanya dikenal di dalam badan
prosedur yang bersangkuan. Nama-nama
yang dideklarasikan di dalam prosedur tersebut dikatakan lingkupnya “ lokal “. Nama- nama lokal hanya
berlaku di dalam prosedur yang
melngkupinya saja. Setelah prosedur selesai dieksekusi, nama-nama tersebut
tidak dikenal lagi di luar prosedur.
2.
Nama Global
Sebaliknya,
nama-nama (konstanta, peubah, tipe, dan lain-lain) yang dideklarasikan di dalam
program utama dikatakan lingkupnya “ global “. Nama-nama global dapat digunakan
di bagian manapun di dalam program, baik di dalam program utama maupun di dalam
prosedur yang dipanggil.
Nama
yang dideklarasikan di dalam prosedur dandi dalam program utama mungkin sama,
namun sifat lokal dan globalnya tetap tidak berubah. Nama peubah yang
dideklarasikan di dalam program utama dan juga dideklarasikan di dalam
prosedur, maka di dalam prosedur nama tersebut adalah peubah lokal, dan di luar
prosedur berlaku sebagai peubah global.
D.
Parameter
1. Parameter
adalah nama-nama peubah yang dideklarasikan pada bagian header prosedur.
Parameter terhadap prosedur dibagi menjadi dua yaitu :
a) Prosedur tanpa
parameter
Memanfaatkan nilai
dari nama-nama yang terdefinisi pada kamus global.
Pemakaiannya biasanya harus “hati-hati”, apalagi jika teks program sudah sangat
besar dan implementasinya menjadi banyak file.
b) Prosedur berparameter
Dirancang, agar
sepotong kode yang
sama ketika eksekusi dilakukan,
dapat dipakai untuk nama parameter yang bebeda-beda.
Tiap
item data ditransfer antara parameter aktual dan parameter formal. Parameter
aktual adalah parameter yang disertakan pada waktu pemanggilan prosedur,
sedangkan parameter formal adalah parameter yang dideklarasikan di dalam bagian
header prosedur itu sendiri. Ketika
prosedur dipanggil, parameter aktual menggantikan parameter formal.
Tiap-tiap parameter aktual berpasangan dengan parameter formal yang
bersesuaian.
2. Berdasarkan
maksud penggunaannya, terdapat tiga jenis parameter formal yang disertakan di
dalam prosedur :
a) Parameter
masukan (input parameter)
b) Parameter
keluaran (output parameter)
c) Parameter
masukan / keluaran (input / output parameter)
3. Parameter
Masukan
Adalah parameter yang nilainya berlaku
sebagai masukan untuk prosedur, pada bahasa pemrograman, istilah parameter ini
sering dinamakan parameter nilai ( value parameter atau parameter by value ).
Nilai yang dimasukkan adalah nilai dari parameter actual. Nilai yang dinyatakan
oleh parameter masukan tidak dapat dikirim dalam arah sebaliknya. parameter
masukan dideklarasikan dengan kata kunci input.
Contoh parameter masukan :
Pascal Program
Program
luas_segitiga_masukan;
Uses
wincrt;
Var
a,t : integer ;
Procedure
cariLuas (a,t:integer);
var L : real;
begin
L := 0.5*a*t;
Writeln('Luas segitiga adalah : '
,L:0:2);
end;
begin
writeln('Menghitung luas segitiga');writeln;
write('Masukkan nilai alas : ' ) ;
readln(a) ;
write('Masukkan nilai tinggi : ' ) ;
readln(t) ;
cariLuas(a,t);
end.
DEKLARASI
a
: integer;
t
: integer;
L
: real;
Procedure
cariLuas (input a,t:integer);
DESKRIPSI
Writeln
('Luas segitiga adalah : ' ,L)
End;
Writeln ('Menghitung luas segitiga')
Write ('Masukkan nilai alas : ')
Readln (a)
Write ('Masukkan nilai tinggi : ')
Readln (t)
cariLuas (a,t)
end.
4. Parameter
Keluaran
Parameter
keluaran adalah parameter yang berfungsi untuk menampung keluaran yang
dihasilkan oleh prosedur. Ketika prosedur yang mengandung mengandung parameter
keluaran dipanggil, maka nama parameter actual menggantikan (substitute) nama
parameter formal yang bersesuaian di dalam prosedur. Selanjutnya, nama parameter aktual akan
digunakan selama pelaksanaan prosedur (ini berlawanan dengan parameter masukan,
yang dalam hal ini nilai dari parameter actual yang di assign ke dalam
parameter formal). Parameter keluaran dideklarasikan di dalam header prosedur,
sebagaimana parameter masukan. Tetapi, parameter keluaran harus dideklarasikan
dengan kata kunci output.
Contoh parameter keluaran :
Pascal Program
Program
Pembagian;
uses
wincrt;
var
a,b : string;
procedure
tukar(var x,y:string) ;
var z:string;
begin
z:=x;
x:=y;
y:=z;
end;
begin
write ('Masukkan nama 1 : ');
readLn(a) ;
write ('Masukkan nama 2 : ');
readLn(b) ;
writeln;writeln('Awal');
writeln('Nama 1 : ',a);
writeln('Nama 2 : ',b);writeln;
tukar(a,b);
writeln('Ditukar');
writeln('Nama 1 : ',a);
writeln('Nama 2 : ',b);writeln;
end.
Pseudocode
DEKLARASI
a
: integer
t
: integer
Luas
: real
Procedure
cariLuas (input a,t : integer; var L : real)
DESKRIPSI
End;
Writeln
('Menghitung luas segitiga')
Write
('Masukkan nilai alas : ')
readln
(a)
write
('Masukkan nilai tinggi : ')
readln
(t)
cariLuas
(a,t,Luas)
write
('Luas segitiga adalah : ', Luas)
End.
5.
Parameter masukan atau keluaran
DEParameter
masukan atau keluaran adalah sebagai “pintu” masuk dan keluar bagi prosedur
tersebut. Parameter keluaran (output parameter) dan parameter masukan/keluaran
(input/output parameter) kadang disebut parameter acuan (reference parameter
atau paramater by reference). Parameter masukan / keluaran dideklarasikan di
dalam header prosedur dengan kata kunci input / ouput. Hal lain yang harus
diperhatikan pada jenis parameter masukan / keluaran ini adalah parameter
actual harus berupa peubah, tidak boleh berupa konstanta atau ekspresi.
Contoh
parameter masukan atau keluaran :
Pascal
Program
Program
Pembagian;
uses
wincrt;
var
a,b : string;
procedure tukar(var
x,y : string) ;
var z:string;
begin
z:=x;
x:=y;
y:=z;
end;
begin
write ('Masukkan nama 1 : ');
readLn(a) ;
write ('Masukkan nama 2 : ');
readLn(b) ;
writeln;writeln('Awal');
writeln('Nama 1 : ',a);
writeln('Nama 2 : ',b);writeln;
tukar(a,b);
writeln('Ditukar');
writeln('Nama 1 : ',a);
writeln('Nama 2 : ',b);writeln;
end.
PSEUDOCODE
DEKLARASI
a
: string
b
: string
z
: string
procedure
tukar(input var x,y:string) ;
DESKRIPSI
z
←
x
x
←
y
y
←
z
end;
write
('Masukkan nama 1 : ')
readLn
(a)
write
('Masukkan nama 2 : ')
readLn
(b)
writeln;writeln('Awal')
writeln
('Nama 1 : ',a)
writeln
('Nama 2 : ',b)
tukar
(a,b)
writeln
('Ditukar')
writeln
('Nama 1 : ',a)
writeln
('Nama 2 : ',b)
end.


0 komentar
Posting Komentar