我需要将此表达式重写为代码(C或Java):
g
,h
,i
,j
,f
,f0
是变量
表达式:
val = 1/{g+h[ln(f0/f)]+i[ln^2(f0/f)]+j[ln^3(f0/f)]-273.15;
我遇到的问题是将ln^2(f0/f)
转换为代码。
这个(pow(ln(fo/f),2))
和ln^3(f0/f)
是pow(ln(f0/f),3)
吗?
谢谢。
答案 0 :(得分:3)
翻译表达式:
val = 1 / { g + h[ ln(f0 / f) ] + i[ ln^2(f0 / f) ] + j[ ln^3(f0 / f) ] - 273.15}
<强>爪哇强>:
在Java中,java.lang.Math
类为数学运算提供了不同的方法:
double logRes = Math.log(f0 / f); // As ln(f0/f) is been used more than once, so it's
// better to have it calculated just once.
double result = 1.0 / (g + (h * logRes) + (i * Math.pow(logRes, 2.0)) + (j * Math.pow(logRes, 3.0)) - 273.15);
<强> C 强>:
在C中,math.h
提供了不同的函数来执行数学运算:
double logRes = log(f0 / f);
double result = 1.0 / (g + (h * logRes) + (i * pow(logRes, 2.0)) + (j * pow(logRes, 3.0)) - 273.15);
答案 1 :(得分:1)
在java中,ln^n(f0/f)
将是:Math.pow(Math.log(f0/f), n)
答案 2 :(得分:1)
double result = 1/(g + h*Math.log(f0/f) + i*Math.pow(Math.log(f0/f), 2) + j*Math.pow(Math.log(f0/f), 3) -273.15);
答案 3 :(得分:0)
为了理解Java中随时可用的指尖数学函数,您可以转到java.lang.Math
的javadoc例如,您可以找到log(double)。