Modul 4 Prosedur dan Fungsi
Sub Program / Modul Dalam Suatu Program biasanya di bagi lagi menjadi beberapa sub program/modul. Dalam Pascal adaa 2 jenis Modul Program, yakni Prosedur Function
Prosedur Prosedur adalah modul program yang mengerjakan tugas/aktivitas yang spesifik dan hasilnya diperoleh dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur Oleh karena itu, pada setiap prosedur, keadaan awal (K.awal) harus didefinisikan sebelum rangkaian instruksi di dalam prosedur dilaksanakan dan keadaan akhir (K.akhir) yang diharapkan setelah rangkaian instruksi dilaksanakan Prosedur diakses dengan cara memangil namanya dari program pemanggil (program utama atau modul program lain): Namaprosedur
Parameter Berdasarkanmaksud penggunaannya, terdapat tiga jenis parameter formal yang disertakan dalam prosedur: Parameter Masukan (input parameter) Parameter Keluaran (output parameter) Parameter masukan/keluaran (input/output parameter)
Parameter Masukan Parameter masukan adalah parameter yang nilainya berlaku sebagai masukan untuk prosedur Pada bahasa pemrograman, istilah parameter masukan ini sering dinamakan parameter nilai (value parameter atau parameter by value) Pada parameter masukan, nilai (value) parameter aktual diisikan (assign) ke dalam parameter formal yang bersesuaian. Nilai ini 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 mengubah nilai parameter aktual. Karena yang dipentingkan adalah nilainya, maka nama parameter aktual boleh berbeda dengan nama parameter formal yang bersesuaian
Contoh Program
Parameter Keluaran Parameter keluaran adalah parameter yang menampung keluaran yang dihasilkan oleh prosedur Pada bahasa pemrograman, istilah parameter keluaran sering dinamakan parameter acuan (reference parameter atau parameter by reference) Bila prosedur yang mengandung parameter keluaran dipanggil, nama parameter aktual di dalam program pemanggil menggantikan nama parameter formal yang bersesuaian di dalam prosedur. Jadi, nama parameter aktual akan digunakan selama pelaksanaan prosedur
Parameter Masukan/Keluaran Parameter masukan/keluaran adalah parameter yang berfungsi sebagai masukan sekaligus keluaran bagi prosedur tersebut. Parameter masukan digunakan pada situasi di mana informasi dikirim hanya dari titik pemanggilan prosedur ke prosedur itu sendiri. Sedangkan parameter keluaran hanya mengirim informasi dari prosedur ke titik pemanggilan prosedur. Parameter masukan/keluaran dideklarasikan didalam header prosedur, sebagaimana parameter masukan. Tetapi, parameter keluaran harus dideklarasikan dengan katakunci input/output
Fungsi Seperti halnya prosedur, fungsi juga merupakan modul program yang mempunyai tujuan spesifik Fungsi adalah modul program yang memberikan/ mengembalikan (return) sebuah nilai dan tipe tertentu (tipe dasar atau tipe bentukan) Sebagaimana halnya dengan prosedur, fungsi diakses dengan memanggil namanya. Selain itu, fungsi juga dapat mengandung daftar parameter formal Parameter pada fungsi selalu merupakan parameter masukan. Jenis parameter masukan pada fungsi disebabkan oleh kenyataan bahwa parameter pada fungsi merupakan masukan yang digunakan oleh fungsi tersebut untuk menghasilkan nilai
Contoh1: Fungsi untuk menghasilkan nilai F(x)= x2+2x–3, xЄR Keterangan : • F adalah nama fungsi, tipenya real • x adalah parameter (by value) formal • Di dalam badan fungsi, nilai yang dihasilkan oleh fungsi dikembalikan (return) ke titik pemanggilan: return x*x + 2*x –3
Prosedur atau fungsi ? Fungsilebih tepat digunakan apabila modul program mengembalikan sebuah nilai, sementara prosedur digunakan bila modul menghasilkan efek netto dari (satu atau) sekumpulan aksi. Namun dalam praktek, seringkali perbedaan antara keduanya tidak jelas, karena sebuah prosedur dapat juga ditulis sebagai fungsi, demikian pula sebaliknya. Pemilihan apakah sebuah modul direalisasikan sebagai fungsi atau prosedur bergantung pada kebutuhan dan seni memprogram anda
Terima Kasih