难度系数 ⭐
时间限制 C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
题目内容 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
思路 全面考察指数。浮点类型的整数次幂可以分为6种情况:
exponent<0 | exponent=0 | exponent>0 | |
base=0 | 报错 | 无意义 | 0 |
base!=0 | 常规计算 | 1 | 常规计算 |
package nowcoder;
public class No12 {
public static double Power(double base, int exponent) {
double result = 1.0;
if (base != 0 && exponent < 0){
for (int i = 0; i < -exponent; i++)
result *= base;
return 1 / result;
} else if (base != 0 && exponent == 0) {
return 1.0;
} else if (base != 0 && exponent > 0){
for (int i = 0; i < exponent; i++)
result *= base;
return result;
} else
return 0;
}
public static void main(String[] args){
System.out.println(Power(2.0, 3));
}
}