Function and Recursion

Sebuah program yang dibuat dalam bahasa C dapat disusun dengan konsep modular dengan menggunakan fungsi. Seperti halnya fungsi dalam matematika, fungsi yang dibuat dalam bahasa pemrograman C juga memiliki hasil tertentu ketika diberi sebuah input. Dengan menggunakan modular programming, sebuah program dipecah menjadi beberapa bagian, yaitu beberapa subprogram yang memuat sebuah fungsi tertentu. Untuk lebih jelasnya, dapat diperhatikan seprti bagan berikut. (gambar diambil dari ppt Binus University).


Penggunaan fungsi atau modular programming dibagi menjadi 3 tipe, yaitu :
1. High Fan-In, yaitu fungsi yang biasa digunakan.
2. Low Fan-Out, yaitu fungsi yang lebih spesifik lagi dan jarang digunakan.
3. Self - Contained, yaitu fungsi yang digunakan untuk sendiri.

Ada 2 tipe fungsi dalam Bahasa C, yaitu :
1. Library function, yaitu fungsi yang telah disediakan.
    Contoh : - strcpy() dalam library <string.h>
                   - sqrt() dalam library <math.h>
2. User defined function. Tipe ini adalah fungsi yang dibuat sendiri oleh user atau programmer.

Stuktur untuk menulis function adalah :
return-value-type nama fungsi (parameter list)
{
   statements;
}

Return value type dapat diisi dengan int atau void. Jika diisi dengan void maka tidak perlu memberi nilai return. Parameter list adalah list dari nilai yang dilempar dari int main.

Dalam int main, fungsi yang kita buat dipanggil dengan menggunakan function prototype.
Syntax :
return-value-type function name (parameter-list)

Recursive dan Itterative.

Recursive adalah fungsi yang memanggil fungsi itu sendiri, misalnya digunakan ketika membuat fungsi fibonacci, faktorial, dll.
Itterative adalah fungsi yang menggunakan looping (for) untuk menghasilkan hasil tertentu.

Comments