Function & Recursion

Modullar Programing

Program dibagi menjadi beberapa modul , modul dalam program C.dapat diimplementasikan menggunakan fungsi  Fungsi dibuat untuk mengelompokan beberapa pernyataan  untuk melakukan beberapa tugas tertentu. Ada beberapa keuntungan Modul program yaitu:
1.Lebih mudah untuk didokumentasikan
2.Lebih mudah untuk melakukan debug, karena alur logis mudah diikuti dan lebih mudah untuk menandai kesalahan titik
3.Desain top-down dengan sub tujuan, program besar dibagi menjadi modul yang lebih kecil
4.Modifikasi dapat dilakukan tanpa mempengaruhi keseluruhan kode

Function


Function adalah sebuah kumpulan atau beberapa perintah yang bisa digunakan oleh programmer kapan saja dibutuhkan. function membuat programmer tidak perlu mengetik ulang beberapa perintah yang sama , sehingga dapat membuat codingan kita terlihat lebih sinpel dan lebih sederhana.
contoh penulisan funtion:
Return - value - type function name (parameter list)
{
     statements;
}

Function Protoype

Fungsi di dalam bahasa C biasa ditulis diatas inisator atau pemanggil atau program utama. Kalau tidak kita harus menggunakan Function Prototype

Tujuan dari Function Prototype ini adalah 
Untuk memastikan suatu fungsi diketahui oleh inisiator / pemanggil
Compiler akan memvalidasi parameter.

syntax yang digunakan adalah seperti :
return - value - type function name (parameter - list)


Identifier Scoping


Global identifier dideklarasikan diluar fungsi apapun dan diletakan diatas semua fungsi dalam program C , Global identifier dapat di deklarasikan kembali di dalam subprogram , berbeda dengan Local Indetifier dideklaraskan didalam fungsi dalam program C.



Parameter Passing

Jika modul tidak mencukupi diri sendiri maka diperlukan data / nilai dan hasilnya melewati dan keluar menggunakan parameter(S)

Daftar parameter adalah antar muka modul dengan modul lain.
terdapat 2 parameter passing:
1.dari nilai , dikirim ke modul lainnya dengan nilai
2.menurut lokasi dikirim ke modul lain menurut alamat

Library vs user defined function

Library function adalah suatu library yang merupakan kumpulah fungsi yang sudah disediakan oleh kompiler sebagai contoh library string.h yang memperbolehkan kita untuk dapat menggunakn fungsi strcpy , strlen , strcmp. ada juga fungsi #include<math.h> yang mempernbolehkan kita menggunakan fungsi matematika seperti fungsi pangkat.

User defined function merupakan fungsi yang tidak berasal dari kompiler  , tetapi merupakan  fungsi yang dibuat oleh user .

Recursive

Fungsi recursive adalah fungsi yang dapat digunakan untuk memanggil  dirinya sendiri.rekursif memiliki beberapa kelemahan yaitu : fungsi rekursif lebih memakan banyak memori, membutuhkan waktu eksekusi yang lebih lama , dan juga harus melewati semua panggilan rekursif menggunakan stack. contoh codingan menggunakan recursive.

nomor fibonaci : 0,1,1,2,3,5,8,13

Fib (N) = N jika N = 0 atau 1
Fib (N) = Fib (N-2) + Fib (N-1) jika N> = 2



int Fib(int n) {
   int f;
   if(n==0) f = 0;
      else if(n==1) f = 1;
         else f = Fib(n-2) + Fib(n-1);
   return f;
}












Comments

Popular posts from this blog

Cloud Computing

Algorithm & Introduction to C

Sorting & Searching