#include #include double pow(double x, int n) { if(x == 0) { assert(n>0); return 0; } else if(n==0) return 1; else if(n > 0) return x*pow(x,n-1); } void main() { cout << pow(3,3); cout << pow(3,-3); // What's wrong here! }