MODUL
PENDALAMAN
PROCEDURE
(Ditujukan
Untuk Memenuhi Tugas Akhir Mata Kuliah Pemrograman)
Disusun
Oleh :
Nerly
Angraeni (4611414035)
Safit
Firmansyah (4611414021)
Fitra
Jelita (4611414006)
UNIVERSITAS
NEGERI SEMARANG
2014
Prosedur adalah suatu program yang terpisah dalam blok
tersendiri yang berfungsi sebagai subprogram. Penggunaan prosedur diawali
dengan kata cadangan procedure di dalam bagian deklarasi procedure.
Pemanggilan prosedur dapat dilakukan dengan menggunakan judul Prosedur. Ketika
sebuah procedure dieksekusi maka. Instruksi-instruksi di dalamnya dikerjakan
satu persatu.
Dalam
dunia pemrograman, procedure merupakan modul program yang mengerjakan tugas
yang spesifik dan menghasilkan suatu efek netto. Efek netto ini dapat diketahui
dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah
procedure. Oleh karena itu pada setiap procedure perlu didefinisikan keadaan
awal dan keadaan akhir. Pada program terstruktur banyak menggunakan prosedur
karena :
- Sebagai penerapan program yang
modular yaitu memecah program yang rumit menjadi program-program bagian
yang lebih sederhana dalam bentuk prosedur.
- Untuk beberapa perintah yang sering
digunakan berulang, cukup dituliskan sekali dalam prosedur dan dapat
dipanggil sewaktuwaktu.
- Pendefinisian
Procedure
Pendefinisian procedure artinya menuliskan
nama procedure, mendeklarasikan nama-nama konstanta, peubah dan tipe, dan
menjabarkan rangkaian aksi yang dilakukan. Parameter adalah nama-nama peubah
yang dideklarasikan pada bagian header procedure. Penggunaan parameter
menawarkan mekanisme pertukaran informasi antara procedure dan titik dimana ia
dipanggil. Tiap item data transfer antara parameter actual dan parameter formal
harus bersesuaian. Parameter actual adalah parameter yang disertakan pada waktu
pemanggilan procedure sedangkan parameter formal adalah parameter yang
dideklarasikan di dalam bagian header procedure itu sendiri. Parameter boleh
ada atau tidak ada (bukan merupakan keharusan). Procedure dengan parameter
lebih menjamin modularitas program. Procedure tanpa parameter bekerja dengan
nama global.
- Pemanggilan
procedure
Procedure bukan program yang berdiri
sendiri. Instruksi-instruksi di dalam procedure baru dapat dilaksanakan hanya
bila procedure tersebut diakses. Procedure diakses dengan cara menganggil
namanya dari program pemanggil. Jika procedure tanpa parameter, maka
pemanggilannyacukup dengan namanya saja. Ketika procedure dipanggil, kendali
program berpindah secara tomatis ke procedure tersebut.
1)
Procedure
Non Parameter
Procedure
non parameter maksudnya tidak ada pengiriman parameter atau variabel tertentu
ke program utama. Cara mendefinisikan
procedure non parameter adalah sebagai berikut :
Saat program dijalankan akan seperti berikut:
2)
Procedure Parameter
Parameter
adalah data masukan untuk sub program yang nantinya akan diproses lebih lanjut
pada sub program tersebut. Dalam pascal dikenal 2 macam parameter yaitu Parameter
nilai dan Parameter
referensi. Cara
mendeklarasikan procedure dengan parameter adalah sebagai berikut :
Pada deklarasi prosedur di atas, parameter X adalah parameter nilai sedang parameter Y adalah parameter referensi. Jadi, pendeklarasian parameter referensi didahului oleh reserved word var. Parameter referensi ini nantinya dapat dijadikan sebagai variable keluaran dari prosedur. Berikut ini adalah contoh program dengan procedure parameter :
Saat dijalankan akan seperti berikut :
Penjelasan
: Dapat dilihat
pada program diatas bahwa a dan t merupakan parameter nilai sedangkan l
merupakan parameter referensi. Variabel l akan menampung hasil perhitungan dari
a dan t sehingga terjadi pengiriman parameter a, t, l ke alas, tinggi dan luas.
- Parameter masukan
dan keluaran
Kita sudah melihat parameter masukan digunakan
pada situasi dimana informasi dikirim hanya dari titik pemanggilan prosedur ke
prosedur itu sendiri Sedangkan parameter keluaran hanya mengirim informasi dari
prosedur ke titik pemanggilan prosedur. Prosedur juga harus dapat mengakomodasi
baik masukan atau keluaran ke blok program pemanggil. Parameter masukan/keluaran
umunya digunakan pada situasi seperti ini.
Ketika prosedur yang mengandung parameter
keluaran dipanggil, nama parameter actual didalam program pemanggil
menggantikan nama parameter formal yang bersesuaian didalam prosedur. Selain
itu isi atau nilai parameter aktual juga ikut disalin kedalam parameter formal.
Jadi, nama dan nilai parameter actual digunakan diseluruh bagian prosedur.
Akibat penggunaan parameter masukan/keluaran, bila parameter aktual diubah
nilainya didalam badan prosedur, maka sesudah pemanggilan prosedur nilai
parameter aktual di titik pemanggilan juga berubah. Ini berbeda dengan parameter
masukan, yang dalan hal ini meskipun nilai parameter actual didalam badan
prosedur diubah, nilai parameter actual tersebut tidak berubah di titik
pemanggilan.
Parameter masukan/keluaran dideklarasikan
didalam header prosedur dengan kata kunci input/output. 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/Keluaran:
Output
Penjelasan
: karena menggunakan parameter masukan/keluaran maka dalam parameter prosedur
tam diawalai dengan kata “var”. bila
parameter aktual diubah nilainya didalam badan prosedur, maka sesudah
pemanggilan prosedur nilai parameter aktual di titik pemanggilan juga berubah.
- Parameter
masukkan
Pada Parameter Masukan, nilai (value) parameter aktual diisikan (assign) ke dalam parameter formal yang bersesuaian. Nilai yang digunakan di dalam badan prosedur yang bersangkutan. Nilai yang dinyatakan oleh parameter masukan tidak dapat dikirim dalam arah sebaliknya. Itulah alasan mengapa parameter jenis ini diacu sebagai parameter masukan. Perubahan nilai parameter di dalam badan prosedur tidak mengbah nilai parameter aktual. Karena yang dipentingkan adalah nilainya, maka nama parameter aktual boleh berbeda dengan nama parameter formala yang bersesuaian. Dalam prosedur menghitung luas segitiga berikut ini, jika program utama ingin mengomunikasikan panjang alas dan tinggi segitiga prosedur HitunglahLuasSegitiga, maka perubah alas dan tinggi harus dideklarasikan sebagai parameter formal di bagian header prosedur.
Perhatikan
Algoritma diatas, kata kunci input
pada bagian hearder menyatakan bahwa alas dan tinggi adalah parameter masukan.
Keadaan awal (K.awal) prosedur adalah kondisi dimana alas dan tinggi sudah
terdefinisi nilainya. Ini berarti bahwa alas
dan tinggi sudah harus berisi nilai
sebelum pelaksanaan prosedur. Keadaan akhir (K.akhir) prosedur adalah kondisi
dimana luas segitiga tercetak (misalnya ke layar). Program utama yang memanggil
prosedur HitunglahLuasSegitiga harus
mendeklarasikan prosedur ini dan memanggilnya dengan parameter aktual yang
bersesuaian:
Prosedur
HitunglahLuasSegitiga dipanggil dari
program utama dengan menyertakan panjang alas dan tinggi segitiga. Karena yang
dipentingkan adalah nilainya, maka nama parameter aktual tidaka harus sama
dengan nama parameter formal yang bersesuaian asalkan tipenya tetap sama.
Contoh program dengan Parameter Masukan :
Output
Penjelasan
: karena menggunakan parameter masukan
maka dalam parameter prosedur tam tidak diawalai dengan kata “var”. bila parameter aktual diubah nilainya didalam
badan prosedur, maka sesudah pemanggilan prosedur nilai parameter aktual di
titik pemanggilan tidak berubah.
- Parameter
Keluaran
Prosedur mngkin menghasilkan satu atau
lebih keluaran yang digunakan oleh program pemanggil. Jika ini kasusnya, maka
nilai keluaran tersebt ditampung di dalam parameter keluaran. Ketika prosedur
yang mengandung parameter keluaran dipanggil, maka nama parameter aktual menggantikkan
(subtitute) nama parameter formal yang bersesuaian di dalam prosedur.
Selanjutnya, nama parameter aktal akan digunakkan selama pelaksanaan prosedur
(ini berawal dari parameter masukkan, yang dalam hal ini nilai dari parameter
aktal yang di-assign ke dalam parameter formal). Karena nama parameter
merupakan suatu lokasi memori, maka bila didalam prosedur parameter aktual
diisi satu nilai, nilai ini akan tetap berada di dalam parameter aktual
meskipun prosedur selesai dilaksanakan. Jadi, setelah pemanggilan, parameter
aktual berisi suatu nilai yang merupakan keluaran dari prosedur tersebut.
Contoh Parameter Keluaran :
Output
Penjelasan
: karena menggunakan parameter keluaran
maka dalam parameter prosedur tam diawalai dengan kata “var”.
CONTOH
LAINNYA
Contoh Program dengan Parameter Masukan
Output
Contoh Program dengan
Parameter Keluaran
Output
Contoh Program dengan Parameter masukan/keluaran
Outputnya :
***
LEBIH JAUH TENTANG
PROCEDURE
Pada penjelasan sebelumnya
telah disingung mengenai macam parameter (parameter nilai dan parameter
reference). Berikut penjelasannya.
- Pengiriman
parameter secara Nilai
Pada pengiriman parameter secara nilai, parameter formal akan berisi nilai yang dikirimkan dari parameter nyata dan nilai parameter tersebut akan lokal di prosedur yang dikirim, sifat dari pengiriman nilai ini adalah satu arah, sehingga perubahan nilai dari parameter formal tidak akan mempengaruhi nilai parameter nyata. Contoh :
Saat
program dijalankan akan seperti berikut ini :
Kemudian bawah ini
merupakan contoh bahwa perubahan pada parameter formal tidak akan mempengaruhi
nilai parameter nyata, karena sifatnya adalah satu arah.
Output:
- Pengiriman
parameter secara acuan (by reference)
Sifat
dari pengiriman parameter secara acuan adalah dua arah artinya perubahan dari parameter
formal akan mempengaruhi nilai dari parameter nyata. Cara deklarasi diprocedure
dengan kata cadangan Var seperti berikut :
Contoh :
Di dalam pascal
diperkenankan prosedur memanggil prosedur yang lain seperti contoh berikut :
Outputnya :
Penjelasan
: dengan memangil procedure tiga, maka secara otomatis procedure satu dan
procedure dua akan terpanggil karena antara procedure satu, dua dan tiga telah
dikatkan satu dengan yang lainnya.
CARA MEMANGGIL
PROCEDURE
- Prosedur
Tersarang
Prosedur tersarang adalah
prosedur yang terdapat di dalam prosedur yang lain dan dipanggil oleh prosedur
diluarnya. (procedure dalam procedure)
Outputnya:
- Prosedur
memanggil dirinya sendiri (rekursi)
Di dalam pascal diperkenankan memanggil prosedurnya sendiri. Istilah ini disebut sebagai recursion. Dalam penggunaanya membutuhkan memory yang besar. Karena pada setiap pemanggilan sejumlah memory tambahan dibutuhkan.
Outputnya :
-Sekian, Terimakasih-
Tidak ada komentar:
Posting Komentar