PROSEDUR DAN FUNGSI

Misalnya kita punya rumus menghitung luas segita, apa yang kamu lakukan bila rumus itu ingin kamu tulis ditiga tempat yang berbeda? apa kamu akan ccp (copy, cut dan paste)? emang bisa sih diperbanyak dengan yang gituan, tapi boros memori dan berabe kalo rumus yang kita tulis ternyata salah, berarti kita harus betulin di tiga tempat juga. Untuk mempermudahnya gunakan Prosedur atau Fungsi.


  1: Program Tutorial4_Prosedur;
  2:
  3: Procedure Tampil;
  4: begin
  5:   writeln('Hi...');
  6:   writeln('Apakabar');
  7: end;
  8: Begin
  9:   Tampil;
10:   writeln('yang di atas menggunakan prosedur loohh...');
11: End.


Apa yang dilakukan program di atas? Coba lihat baris ke-3 sampai 7. Itulah yang disebut prosedur. Program utamanya mulai dari baris ke 8 sampai 11. Pada baris ke 9 prosedur yang kita buat sebelumnya dipanggil dan dieksekusi. Ini outputnya

Hi...
Apakabar
yang di atas menggunakan prosedur loohh...

Selain itu prosedur dan fungsi bisa di taruh variabel lohh... Perhatikan contoh penggunaan fungsi di bawah ini:

1: Program Tutorial4_Fungsi;
  2: var hasil: integer;
  3: Function Itung(a, b : integer) : integer;
  4: begin
  5:   itung:=a+b;
  7: end;
  8: Begin
  9:   hasil:=itung(7, 9);
10:   writeln('Hasil 7 + 9 sama dengan ', hasil);
11: End.

Baris 3 sampai 7 adalah fungsi. Tapi perhatikan bentuk fungsinya, ada pendeklarasian variabel a dan b. Coba liat baris ke 9 ketika fungsi itung dipanggil. Di sana tertulis "itung(7, 9)", secara otomatis a akan mendapat nilai 7 dan b mendapat 9. Bagaimana jika ditulis "itung(3,5,6)"? Jelas gak bisa karena dialokasikan hanya 2 variabel. Hasil penjumlahan a + b ditampung di fungsi itung (lihat baris ke-5) dan hasil itu diberikan ke variabel hasil (baris 9).

Lalu apa perbedaan prosedur dan fungsi? Prosedur hanya bisa menjalankan perintah dan tidak mengembalikan nilai (lihat kembali contoh program prosedur sebelumnya). Sedangkan fungsi bisa mengembalikan nilai untuk di tampilkan dilayar atau diolah lagi. Bila kita punya fungsi yang bernama CekSaldo, maka CekSaldo bisa berfungsi seperti variabel sama seperti pada fungsi Itung di atas.

Bagaimana? mudah bukan? gunakan prosedur dan fungsi sesuai kebutuhan. Terkadang fungsi lebih berguna dan efisien dibandingkan dengan prosedur.