我必须在我的应用程序中实现一个使用此等式的公式
假设我将(1 - (2.0 / 3.0))提升到2。
double w, double h
(Math.pow((1 - (w / h)), 2)) //which obviously gave me wrong answer
所以我必须通过以下方式实现这个等式......我想知道是否有更简单的方法来做到这一点。
有没有比这样做更好的方法呢?
Math.pow(a,2) - 2 * (a * b) + Math.pow(b,2)
答案 0 :(得分:1)
这将是一种直接且计算效率高的方法:
double result = 1 - w/h;
result *= result;
通过单次乘法提高第二次幂可能比调用Math.pow
更快,而且可以更简单地输入。
同样适用于您的第二个公式:
double result2 = a*a - 2*a*b + b*b;