Program C++ Pemangkatan Rekursif dengan fungsi ODD
#include <conio.h>
#include <iostream>
using namespace std;
bool odd(int n){
if (n%2!=0) return true;
else return false;
}
int pangkat (int a, int n) { //membuat function/fungsi pangkat
int x;
if (n==0) { return 1; }
else {x =pangkat(a,n/2);
if (odd(n)) return (x*x*a);
else return (x*x);
}}
int main(){ //program utama
cout<<"\tProgram perpangkatan By Lukman (21 mei 2012)\n\n";
int a,n,hasil;
cout<<"masukkan nilai a = "; cin>>a;
cout<<"masukkan nilai n = "; cin>>n;
cout<<"hasil "<<a<<" pangkat "<<n<<" = " <<pangkat(a,n);
getch();
}
0 Komentar