Prosedur (Procedure)
Penggunaan prosedur(procedure) merupakan salah bentuk modularisasi program yaitu teknik pemrograman yang memecah/membagi suatu program menjadi sub-sub program (modul) Bentuk modul program yang biasa dikenal : Prosedur (Procedure) Fungsi (Function)
Keuntungan Modularisasi Program Menghindari penulisan teks yang sama secara berulang kali (untuk kasus aktivitas yang harus dilakukan lebih dari satu kali) Kemudahan menulis dan menemukan kesalahan (debug) program
Pendefinisian Prosedur (tanpa parameter) Procedure namaprosedur { penjelasan tentang apa yang dilakukan prosedur} Deklarasi {nama-nama yang digunakan} Deskripsi {bagian yang berisi intruksi/pernyataan}
Contoh Procedure tampilkalimat {menampilkan kalimat belajar prosedur} Deklarasi {tidak ada} Deskripsi write(‘Belajar Prosedur’)
Procedure luaspersegi {menghitung luas persegi} Deklarasi Luas, panjang, lebar : integer Deskripsi Read(panjang,lebar) Luas panjang * lebar Write (luas)
Pemanggilan Prosedur Prosedur diakses/dipanggil dengan menuliskan nama prosedur dari program pemanggil (program utama atau modul program lain) Di dalam progam pemanggil dideklarasikan prototype prosedur di dalam bagian DEKLARASI (hanya bagian header) dengan tujuan supaya program pemanggil mengenal nama prosedur serta cara mengaksesnya
Contoh Program Utama yang memanggil prosedur luaspersegi Algoritma HitungLuasPersegi {menhitung luas persegi panjang} Deklarasi Procedure luaspersegi Deskripsi Write(‘Menghitung Luas Persegi’) luaspersegi
Nama Lokal dan Nama Global Nama-nama (konstanta, peubah, tipe dan lainnya) yang dideklarasikan di dalam bagian DEKLARASI Prosedur dikatakan nama-nama yang bersifat LOKAL Nama-nama yang dideklarasikan di dalam program utama dikatakan nama-nama yang bersifat GLOBAL
Parameter Parameter Formal Parameter yang dideklarasikan di dalam bagian header prosedur Parameter Aktual Parameter yang disertakan pada waktu pemanggilan
Prosedur dengan parameter Procedure namaprosedur (daftar parameter formal) { penjelasan tentang apa yang dilakukan prosedur} Deklarasi {nama-nama yang digunakan yang bersifat lokal} Deskripsi {bagian yang berisi intruksi/pernyataan}
Pemanggilan Prosedur dengan parameter Prosedur dengan parameter diakses dengan cara memanggil namanya dari progarm pemanggil (program utama atau modul program lain) disertai parameter aktualnya NamaProsedur (daftar parameter aktual)
Ketentuan antara parameter aktual dengan parameter formal Jumlah parameter aktual pada pemanggilan prosedur harus sama dengan jumlah parameter formal pada deklarasi prosedur Tiap parameter aktual harus bertipe sama dengan tipe parameter formal Tiap parameter aktual harus diekspresikan secara konsisten dengan parameter formal yang bersesuaian tergantung dengan jenis paramater formalnya
Jenis Parameter Formal Parameter Masukan (input parameter) Parameter Keluaran (output parameter) Parameter Masukan/Keluaran (input/ouput parameter) Input parameter disebut juga paramater by value Input/Output parameter disebut juga parameter by reference
Function (Fungsi)
Pengertian Fungsi Fungsi adalah modul program yang memberikan/mengembalikan sebuah nilai dari tipe tertentu Fungsi juga dapat mengandung daftar parameter formal. Parameter pada fungsi selalu merupakan parameter masukan
Pendefinisian Fungsi Function namaFungsi (input parameter formal) tipe hasil {spesifikasi fungsi, menjelaskan apa yang dilakukan dan yang dikembalikan fungsi} DEKLARASI {mendeklarasikan nama yang digunakan} DESKRIPSI {instruksi untuk menghasilkan nilai kembalian} return hasil {pengembalian nilai}
Pemanggilan Fungsi Fungsi diakses dengan memanggil namanya dari program utama diikuti dengan daftar paramater aktual (jika ada). Karena menghasilkan nilai harus ada variabel penampungnya variabel namafungsi(daftar parameter aktual)
Contoh Fungsi Function luasPersegi (input p,l : integer) integer {mengembalikan nilai luas} Deklarasi {tidak ada} Deskripsi Return p*l
Contoh Pemanggilan Fungsi Algoritma HitungLuasPersegi {menghitung luas persegi} Deklarasi panjang, lebar, hasil : integer Deskripsi Read (panjang,lebar) hasil luasPersegi (panjang,lebar) Write (hasil)