NOTASI ALGORITMA – PROSEDUR DAN FUNGSI

Setiap bahasa pemrograman pasti selalu menyediakan fungsi-fungsi yang sudah didefinisikan oleh bahasa pemrograman tersebut (built-in function). Namun ada kalanya kita memerlukan suatu prosedur tertentu  tidak tersedia dalam built-in function. Dan kali ini, saya akan menjelaskan sedikit tentang prosedur dan fungsi.

Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Prosedur dibuat bertujuan untuk melakukan aktifitas tertentu yang diinginkan dalam skala kecil maupun besar. Ada beberapa hal yang menurut saya menjadikan prosedur sangat bermanfaat :

  1. Prosedur dapat memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur.
  2. Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam 1 prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan.
  3. Membuat kode program tampak lebih sederhana dan lebih mudah dibaca.

Fungsi sama seperti halnya dengan prosedur, namun tetap ada perbedaannya yaitu fungsi wajib mempunyai parameter dan mempunyai output dengan tipe variabel yang kita tentukan. Parameter sendiri terdiri dari Parameter Aktual dan Parameter Formal. Parameter Aktual adalah suatu variable yang dimasukan untuk diproses dalam fungsi, sedangkan Parameter Formal berperan sebagai variable penampung variable aktual.

Dibawah ini adalah Notasi Algoritma sederhana yang saya tulis untuk menjelaskan tentang prosedur dan fungsi:

(Maaf jika adanya kekurangan dalam segi kerapian indentasi dikarenakan tidak bisa diberi indent secara otomatis oleh karena saya copy-paste dari catatan yang saya tulis sendiri di notepad++ sebelumnya. Yang sebenarnya text aslinnya semuanya di notepad++ sudah dalam kondisi berindentasi/rapi)

 

// JUDUL
PROSEDUR DAN FUNGSI

// KAMUS
a, b, c <- integer
d, e, f <- integer
hasil_kali <- integer

// PROSEDUR DAN FUNGSI
procedure tambah()
function kali(x,y)

// DESKRIPSI
d <- 3
e <- 4

tambah()
hasil_kali = kali(a,b)

tambah()
{
f <- d + e
}

kali(x <- integer, y <- integer)
{
// KAMUS LOKAL
z <- integer
z <- x * y
return z
}

Saat pemanggilan prosedur tambah(), akan dijalankan f <- d + e tetapi tanpa adanya pengembalian nilai.

Saat pemanggilan fungsi kali() dengan parameter formal x dan y, akan dijalankan z <- x + y. Yang dimana nilai x dan y diambil dari a dan b yang merupakan parameter aktual. Dan diakhiri dengan pengembalian nilai z ke variable hasil_kali.