#include <iostream> using namespace std; int pow(int base, int power){ if (power == 1) { cout<<" All powers calculated! Unwinding..."<<endl; cout<<base<<"^"<<power<<" = "<< base<<endl; return base; } else { cout<<"Calculating "<<base<<"^"<<power<<"..."<<endl; cout<<" Need calculate "<<base<<"^"<<power-1<<"..."<<endl<<endl; int pow1 = pow(base, power - 1); cout<<base<<"^"<<power<<" = "; cout<<base<<" * "<<base<<"^"<<power - 1<<" = "; cout<<base<<" * "<<pow1<<" = "; pow1 *= base; cout<<pow1<<endl; return pow1; }; } int main(){ cout<<"Full process of calculating 3^5:"<<endl; cout<<"------------------------------------------------------------"<<endl; int pw = pow(3, 5); cout<<"------------------------------------------------------------"<<endl; return 0; } |