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