-->

I'M Bayu Pradika

Graphic Designer . Web Developer . Programmer

Sabtu, 03 September 2022

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));
}


4. Fungsi rekursi untuk menentukan bilangan prima atau bukan prima

#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);
}


5. Fungsi rekursi untuk menghitung pangkat
#include <iostream>
#include <stdio.h>
int pangkat(int x, int y)
{
 if (y == 0)
  return 1;
 else
  return x * pangkat(x, y - 1);
}
int main()
{
 int x, y;
 printf("Bilangan x pangkat y : ");
 scanf("%d %d", &x, &y);
 printf("%d pangkat %d = %d\n", x, y, pangkat(x, y));
}



Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna Veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.

0 comments:

Categories

Contact Us

BAYU
+62 896-2690-9619
Kampar, Riau, Indonesia