Skip to main content

Faktorial C++ Dengan Metode Rekursif

1. Pengertian

-Rekursif merupakan alat/cara untuk memecahkan masalah dalam suatu fungsi atau procedure yang memanggil dirinya sendiri.
-Prosesnya terjadi secara berulang-ulang
-Yang perlu diperhatikan adalah “stopping role”

2. Kelebihan

-Karena program lebih singkat dan ada beberapa kasus yang lebih mudah menggunakan fungsi yang rekursif

3. Kekurangan

-Memakan memori yang lebih besar, karena setiap kali bagian dirinya dipanggil, dibutuhkan sejumlah ruang memori tambahan.
-Mengorbankan efisiensi dan kecepatan


4. Problem yang sering dijumpai

-Rekursi seringkali tidak bisa “berhenti” sehingga memori akan terpakai habis dan program bisa hang.

5. Penanggulangan

-Jika memang bisa diselesaikan dengan iteratif, gunakanlah iteratif!

6. Contoh Permasalahan :

Penghitungan bilangan faktorial
5! = 5 x 4 x 3 x 2 x 1
4! = 4 x 3 x 2 x 1
Berarti 5! = 5 x 4!

7. Penyelesaian dengan Metode Rekursif

Cara pertama untuk menyelesaikan permasalahan di atas adalah dengan cara rekursif, dimana n! adalah hasil kali dari n dengan (n-1)!. -> dicontohkan bahwa 5! = 5 x 4!
Untuk menyelesaikan (n-1)! adalah sama dengan n!, sehingga (n-1)! adalah n-1 dikalikan dengan (n-2)!, dan (n-2)! adalah n-2 dikalikan dengan (n-3)! dan seterusnya sampai dengan n = 1, kita menghentikan penghitungan n!

8. Contoh Program :


#include <iostream.h>
#include <conio.h>

int faktorial (int n)
{if (n=0) return 0;
else if (n==0) return 1;
else if (n==1) return 1;
else
return n*faktorial(n-1);
}
void main()
{
int fak;
cout<<"Masukkan beberapa faktorial = ";cin>>fak;
cout<<"maka hasilnya = "<<faktorial(fak);
getch();
}





Comments

  1. program ini ga jalan ya di Dev-C ?! http://bandungbuatbesok.blogspot.com

    ReplyDelete
  2. ya gak lah ne kan bwt borland....

    bisa jalan tapi harus di modif sedikit... hehe

    ReplyDelete

Post a Comment

Popular posts from this blog

Optimalkan Koneksi Internet Dengan "FULL SPEED"

Bagi kita ‘penjelajah internet’ pasti mendambakan koneksi internet yang cepat, sehingga kita dapat membuka halaman web dengan lancar dan mendownload data-data yang kita perlukan di dunia maya. Bayangkan saja, kalau kita berhadapan dengan koneksi yang lelet, padahal kita harus segera menyelesaikan pekerjaan dan apa yang kita butuhkan sebenernya sudah tersedia di internet, ditanggung pasti !

10 Klub Sepak Bola Terkaya di Dunia Tahun 2011

Inilah Klub - klub terkaya didunia pada tahun 2011. Dimana peringkat paling atas diduduki dua raksasa Spanyol, yakni Real Madrid dan Barcelona, kedua tim Spanyol tersebut tercatat sebagai klub dengan jumlah pendapatan tertinggi di dunia. Sementara peringkat ketiga yang diduduki Raksaksa Inggris, Manchester United yang terbelit utang besar, turun ke posisi tiga. Berikut daftar klub dengan jumlah pemasukan tertinggi berdasarkan laporan Deloitte dan dikutip Reuters. REAL MADRID (Sebelumnya peringkat ke-1) Total pemasukan: 401,4 juta euro (sekitar Rp 5,107 triliun) Pemasukan tiket pertandingan: 101,4 juta euro Hak siar: 160,8 juta euro Komersial: 139,2 juta euro FC BARCELONA (Sebelumnya peringkat ke-3) Total pemasukan: 365,9 juta euro (Rp 4,657 T) Pemasukan tiket pertandingan: 95,5 juta euro Hak siar: 158,4 juta euro Komersial: 112,0 juta euro MANCHESTER UNITED (Sebelumnya peringkat ke-2) Total pemasukan: 327,0 juta euro (Rp 4,160 T) Pemasukan dari tiket pertandingan: 127,7 ju...

Program Sederhana Penyewaan CD/DVD for Delphi

Program ini merupakan tugas dari matakuliah IMK (Interaksi Manusia dan Komputer). Di mana mahasiswa diwajibkan membuat program aplikasi yang User Friendly yaitu antarmuka yang enak dilihat, mudah dioperasikan, mudah dipelajari, dan user merasa senang menggunakan/menjalankannya. Untuk membuat antarmuka yang memenuhi kriteria tersebut, maka aplikasi tersebut harus dapat menangani piranti-piranti yang terhubung dengan sistem, misalnya piranti masukan (keyboard, mouse, dll), dan juga piranti keluaran, misalnya layar dan printer. Berikut adalah Interface program yang saya buat : 1. Form Login 2. Form Loading 3. Form Tabel Anggota 4. Form Tabel CD/DVD 5. Form Tabel Transaksi Download aplikasinya disini (Program Penyewaan CD dan DVD v.1.1.rar) Password winrar : fauyan