Function and Recursion


Pertama tama saya akan memperkenal kan diri saya dulu saya loris yugo prasekti mahasiswa school of computer science binus university kelas LN-01 NIM :2201738996 


Function and recursion

Definisi Function

Fungsi Konstruksi

return-Value-Type Function-Name (Parameter-List) 
{
Statements

Return-Value-Type: Jenis data Nilai yang dikembalikan 
-tidak terisi, lalu Tipe Data default akan digunakan (Default Integer) 
-Jika Return-Value-Type Void maka fungsi tidak akan kembali 

VALUEPARAMETER-List: Daftar Nilai yang Dikirim dari Fungsi Penggunaan (Pengguna)

Contoh
-Formal parameter

int maximum (int x, int y){
        int max = x;
        if ( y > max) max = y;
        return max
}

-Actual parameter

void main () {
      int a,b;
      printf("Input 2 even values : ");
      scanf("%d %d", &a, &b);
      printf("Largest value is : %d\n",maximum(a,b));
}

Definisi Recursion

-Rekursif adalah fungsi panggilan di dalam fungsi tertentu yang           memanggil dirinya sendiri 
-rekursif fungsi, cocok untuk masalah rekursif
-Example :
 Factorial (n) or n! defined as follows :
 n! = 1, for n = 0; 
 n! = n * (n-1)!, for n > 0
 4! = 4 * 3!
 3! = 3 * 2!
 2! = 2 * 1!
 1! =  1* 0!
 0! =  1
 Trace back : 4! = 1*2*3*4 = 24

Fungsi rekursif memiliki dua komponen: 
-nilai kasus dasar 
 (konstan) tanpa memanggil call reversive call.
-Reduction step
 sdari nilai input yang konvergen ke kasus dasar.

Example: 
-(Fungsi faktorial) kasus dasar: N = 0REVUKSI 
-Langkah: F (N) = N * F (N-1)


-Factorial - Recursive

long factor (int n) 
{
     if(n==0) return (1);
      else return(n * factor(n-1));
}


-Factorial - Iterative 
long factor(int n) {
     long i, fac = 1;
     for(i=1; i<=n; i++)  fac *= i;
     return (fac);
}

Ringkasan

-Fungsi dibentuk melalui pengelompokan beberapa pernyataan   untuk  melakukan pekerjaan tertentu
-Bahasa pemrograman C mengimplementasikan pemrograman   modular menggunakan fungsi

Komentar