C Program – Fungsi faktorial secara manual(looping) dan rekursif

File 1 adalah contoh fungsi untuk mencari nilai faktorial yang di buat dengan cara looping, di dalam proses looping terjadi proses pengurangan pada bilangan yang di faktorialkan sehingga, n*n-1*n-2*n-3*…*1, looping akan berhenti saat kondisi while pada angka 1.

#include <stdio.h>
#include <stdlib.h>
int faktorial(int x);
int main()
{
    int x,hasil;
    printf("n Fungsi Faktorial n ===================n");
    printf("n Untuk fungsi x! masukan nilai x : ");
    scanf("%d",&x);
    hasil=faktorial(x);
    printf("n Hasil dari %d! : %d",x,hasil);
    return 0;
}
int faktorial(int x){
    int xtmp=x,hasil=x;
    while(xtmp!=1){
        if(x==0)
        {
            hasil=1;
            break;
        }
        hasil*=xtmp-1;
        xtmp--;
    }
    return hasil;
}

File 2. Konsep fungsi rekursif adalah fungsi yang memanggil dirinya sendiri di dalam fungsi tersebut hingga suatu keadaan terpenuhi. Contoh kedua ini mekanismenya hampir sama yaitu dengan mengurangi bilangan yang difaktorialkan, bedanya cara kedua menggunakan metode rekursif.

#include <stdio.h>
#include <stdlib.h>
int faktorial(int x);
int main()
{
    int x,hasil;
    printf("n Fungsi Faktorial n ===================n");
    printf("n Untuk fungsi x! masukan nilai x : ");
    scanf("%d",&x);
    hasil=faktorial(x);
    printf("n Hasil dari %d! : %d",x,hasil);
    return 0;
}
int faktorial(int x){
if (x == 1 || x == 0) return 1;
return x * faktorial(x-1);
}

*) keterangan : Aplikasi yang saya gunakan Codeblock versi 10.05

About Lin

SG | ID | Illustrator | Beauty Blogger | Skincare anthusiast

Posted on 30 September 2012, in Open Source ( C Program ), Pemrograman C and tagged . Bookmark the permalink. Leave a comment.

Komentar untuk penulis