Contoh Program C++ Tentang Rekursif
1. Fungsi rekursif untuk menghitung nilai faktorial
#include <iostream>
using namespace std;
long int faktorial (int x);
int main() {
int r,hasil;
cout<<"Masukan Nilai = ";
cin>>r;
hasil=faktorial(r);
cout<<"Faktorial "<<r<<"!= "<<hasil<<endl;
}
long int faktorial (int x) {
if (x==1)
return(x);
else
return (x*faktorial(x-1));
}
2 : Fungsi menghitung nilai faktorial dengan rekursi tail
#include <iostream>
#include <stdio.h>
int faktorial(int x, int a) {
if(x==1)
return a;
else
return faktorial(x-1,x*a);
}
int main() {
int N;
printf("Masukkan N = ");
scanf("%d", &N);
printf("Hasil %d! = %d\n", N, faktorial(N,1));
}
3. Fungsi rekursi untuk menampilkan deret fibonanci
#include <iostream>
#include<stdio.h>
int fibo(int x) {
if (x<=0 || x<=1)
return x ;
else
return fibo(x-2) + fibo(x-1);
}
int main() {
int n;
printf("Masukkan jumlah deret = ");
scanf("%d", &n);
printf("Deret fibonanci dari %d = ", n);
for(int i=0;i<n;i++)
printf("%d ", fibo(i));
}
#include <iostream>
#include <stdio.h>
#include <math.h>
int prime(int number, int index)
{
if (index == 1)
return 1;
else if (number % index == 0)
return 0;
else
return prime(number, --index);
}
int main()
{
int num;
printf("Masukkan bilangan sampai dengan : ");
scanf("%d", &num);
printf("Deret bilangan prima : ");
for (int i = 1; i <= num; i++)
if (prime(i, (int)sqrt(i)))
printf("%d ", i);
}
0 comments:
Posting Komentar