我必须计算以下函数:
f(x)=x^3-x-1
我创建了一个名为“ Function”的类,并且在其中有一个计算上述函数的方法。
这是我的代码:
double function(double num)
{
BigDecimal first,second;
double a,b,c,b_copy;
a = Math.pow(num, 3);
b=(double)a-num;
first=new BigDecimal(b);
second=new BigDecimal("1.0");
first.min(second);
b_copy=first.doubleValue();
return b_copy ;
}
实际上,这两行代码存在一些问题:
first.min(second);
b_copy=first.doubleValue();
例如,当num
0时b_copy
必须为-1但必须为0。为什么呢?
该min(...)
方法返回一个BigDecimal
,它不会对其进行修改。尝试这个:
first = first.min(second);
另外,如果1
要从first
(如公式所示)的值中减去,请使用该subtract(...)
方法,因为min(...)
实际上返回的是两个BigDecimal
s中的最小值。
first = first.subtract(second);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句