📄 intpower.java
字号:
package numbercruncher.mathutils;
/**
* Raise a double value to an integer power.
*/
public final class IntPower {
/**
* Compute and return x^power.
* @param x
* @param power the integer power
* @return x^power
*/
public static double raise(double x, int exponent) {
if (exponent < 0) {
return 1 / raise(x, -exponent);
}
double power = 1;
// Loop to compute x^exponent.
while (exponent > 0) {
// Is the rightmost exponent bit a 1?
if ( (exponent & 1) == 1) {
power *= x;
// Square x and shift the exponent 1 bit to the right.
}
x *= x;
exponent >>= 1;
}
return power;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -