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