Rekursi pada Bahasa C

Posted by Didi Setyapramana On 4:50 AM 0 komentar

1.      A. Menghitung bilangan factorial

Persyaratan :
Factorial bilangan negative tidak ada dan factorial nol sama dengan factorial sati yaitu sama dengan 1.
a.       Algoritma dengan pseuducode:

function faktorial(n)
if n=0 or n=1 then hasil=1
else
hasil=1
for i=2 to n do
hasil=hasil*i
end for
end if
factorial = hasil
endfunction

b.      Implementasi Dalam Bahasa C/C++

/* Program Menghitung Faktorial Bilangan */
#include <stdio.h>

 long int factorial (int n);
main()
{
int x;
printf(“Program menghitung n Faktorial \n”);
printf(“Masukkan bilangan yang akan difaktorkan= ”);
scanf(“%d”,&x);
faktorial(x);
}

long int faktorial (int n)
{
int i;
int y;
long int hasil;
if (n==0 || n==1)
printf(“0! Dan 1!=1 \n”);
else
{
y=2;
for(i=1; i<n; i++)
{
hasil=y*hasil;
y=y+1;
}
printf(“n factorial = %d \n”,hasil);
}
}

Tampilan program :

Program menghitung n Faktorial
Masukkan bilangan yang akan difaktorkan= 6
n factorial = 720


1.      B Perpangkatan xn . n bernilai nol atau bilangan-bilangan bulat positif

Jawab :
a.       Algoritma dengan pseuducode:

function pangkat(x,n)
if n=0 or then hasil=1
else
for i=1 to n do
hasil=hasil*x
end for
pangkat = hasil
end if
endfunction

b.      Implementasi Dalam Bahasa C/C++

/* Program Menghitung Perpangkatan */
#include <stdio.h>

long int pangkat(int a,int b);
main()
{
int x,y;
printf(“Program Menghitung Perpangkatan\n”);
printf(“Masukkan bilangan yang akan dipangkatkan : “);
scanf(“%d”,&x);
printf(“Masukkan bilangan pemangkatnya : “);
scanf(“%d”,&y);
printf(“ %d pangkat %d= %d \n”,x,y,pangkat(x,y));
}

long int pangkat(int x, int y)
{
long int hasil;
int I;
if (y==0)
return 1;
else
{
hasil=1;
for (i=1; i<=y; i++)
hasil=hasil*x;
return(hasil);
}
}


Tampilan program :

Program Menghitung Perpangkatan
Masukkan bilangan yang akan dipangkatkan : 2
Masukkan bilangan pemangkatnya : 4
2 pangkat 4 = 16

0 Response for the "Rekursi pada Bahasa C"

Post a Comment