/**
*给定一个double类型的浮点数base和int类型的整数exponent。
- 求base的exponent次方。
- 思路:
- 分情况讨论指数exponent大于0,小于0的情况
*/
public class Practice12 {
public static void main(String[] args) {
Practice12 p = new Practice12();
double base = 1.0;
int exponent = 2;
p.Power(base, exponent);
}
private double Power(double base, int exponent) {
//定义一个去获取结果的double数值,写不写1.0都行,反正默认就是double
double result = 1.0;
//如果指数为0,那么结果一定是1.0
if (exponent == 0){
return result;
}
//如果指数为正数,直接乘就好了
else if (exponent > 0 ){
for (int i = 0; i < exponent; i++){
result *= base;
}
}
//如果指数为负数,像整数那样相乘以后还有取倒数
else {
exponent = -exponent;
for (int i = 0; i < exponent; i++){
result *= base;
}
result = 1/result;
}
return result;
}
}
我这个做法是最简单最捞的了哈哈,不过最好理解的也是,emmm,先就写这个吧
原文链接:https://www.nowcoder.com/practice/1a834e5e3e1a4b7ba251417554e07c00?tpId=13&tqId=11165&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking