#include <iostream>
using namespace std;
int getpower(int x, int y) {
if (y < 0)
return 0;
else if (y == 0)
return 1;
else if (y == 1)
return x;
else
return x*getpower(x, y - 1);
}
double getpower(double x, double y) { //只能实现正负整数和零;怎么实现小数呢?
if (y == -1)
return 1.0 / x;
else if (y == 0)
return 1;
else if (y == 1)
return x;
else if (y > 1)
return x * getpower(x, y - 1);
else if (y < -1)
return 1.0/x * getpower(x, y + 1);
}
int main() {
int x, y;
cin >> x >> y;
cout << getpower(x, y);
double a, b;
cin >> a >> b;
cout << getpower(a, b);
return 0;
}
编写递归函数getPower计算x的y次方,在同一程序中针对整型和实型实现两个重载函数:
最新推荐文章于 2023-04-03 19:58:16 发布