Lompat ke konten Lompat ke sidebar Lompat ke footer

Definisi Fungsi pada Algoritma

Definisi Fungsi pada Algoritma


Fungsi adalah upa-program yang memberikan/mengembalikan (return) sebuah nilai dari tipe tertentu (tipe dasar atau tipe bentukan). Definisi fungsi di dalam program bersesuaian dengan definisi fungsi di dalam matematika.

FUNGSI pada Algoritma

Fungsi/function adalah suatu kumpulan instruksi/perintah/program yang dikelompokkan menjadi satu, letaknya terpisah dari program yang menggunakan fungsi tersebut, memiliki nama tertentu yang unik, dan digunakan untuk mengerjakan suatu tujuan tertentu.

Konsep Dasar

  • Fungsi adalah bagian dari kode program yang mempunyai tugas khusus
  • Fungsi akan dipanggil ke program utama atau fungsi lain bila diperlukan
  • Sebuah fungsi biasanya digunakan untuk menangani suatu proses tertentu yang ada dalam sebuah program

 


Struktur Fungsi

Sebagai halnya pada prosedur, struktur fungsi sama dengan struktur algoritma : ada bagian header yang berisi nama fungsi (beserta parameter masukan, jika ada) dan spesifikasi tentang fungsi tersebut, bagian deklarasi, dan badan fungsi.

Notasi algoritmik untuk mendefinisikan fungsi adalah :

function NamaFungsi (input deklarasi parameter, jika ada) -> tipe
{ spesifikasi fungsi, menjelaskan apa yang dilakukan dan yang dikembalikan oleh fungsi. }

DEKLARASI
{ semua nama yang dipakai di dalam fungsi dan hanya berlaku lokal di dalam fungsi didefinisikan disini }

ALGORITMA
{ badan fungsi, berisi instruksi-instruksi untuk menghasilkan nilai yang akan dikembalikan oleh fungsi }

return ekspresi { pengembalian nilai yang dihasilkan fungsi }

----------------------------------
Tipe menspesifikasikan tipe nilai yang diberikan oleh fungsi. Nilai yang diberikan oleh fungsi dapat bertipe dasar maupun bertipe bentukan. Parameter formal  selalu berjenis parameter masukan sehingga deklarasi nama parameter selalu diawali dengan kata input. Sebagaimana halnya pada prosedur, parameter fungsi pada fungsi tidak harus selalu ada.

Semua nama peubah/konstanta yang hanya berlaku di dalam fungsi saja diumumkan di bagian deklarasi. Nama yang didefinisikan di dalam bagian deklarasi fungsi hanya dikenal dan berlaku di dalam fungsi yang bersangkutan saja, fungsi lain atau program utama tidak dapat menggunakannya.

Pernyataan
return ekspresi

di dalam badan fungsi bertujuan untuk mengembalikan nilai yang dihasilkan oleh fungsi tersebut. Ekspresi dapat berupa konstanta, atau sebuah peubah, atau sebuah rumus.



Kelebihan menggunakan Fungsi

  • Dapat melakukan pendekatan top-down (penelusuran program mudah) dan divide-and-conquer (program besar dapat dipisah menjadi program-program kecil)
  • Kode program menjadi lebih pendek, mudah dibaca, dan mudah dipahami
  • program dapat dikerjakan oleh beberapa orang sehingga program cepat selesai dengan koordinasi yang mudah
  • mudah dalam mencari kesalahan-kesalahan karena alur logika jelas dan sederhana
  • kesalahan dapat dilokalisasi dalam suatu modul tertentu saja.
  • modifikasi program dapat dilakukan pada suatu modul tertentu saja tanpa mengganggu program keseluruhan
  • fungsi-fungsi menjadikan program mempunyai struktur yang jelas (dengan memisahkan langkah-langkah detail ke satu atau lebih fungsi-fungsi, maka fungsi utama (main) akan menjadi lebih pendek, jelas dan mudah dimengerti.
  • fungsi-fungsi digunakan untuk menghindari penulisan program yang sama yang ditulis secara berulang-ulang.
  • langkah-langkah tersebut dapat dituliskan sekali saja secara terpisah dalam bentuk fungsi.  Selanjutnya bagian program yang membutuhkan langkah-langkah ini tidak perlu selalu menuliskannya, tidak cukup memanggil fungsi tersebut.
  • mempermudah dokumentasi
  • Reusability (Suatu fungsi dapat digunakan kembali oleh program atau fungsi lain.