繁体   English   中英

将数学表达式转换为C或Java代码

[英]Convert math expression into C or Java code

我需要将此表达式重写为代码(C或Java):

ghijff0是变量

表达方式

val = 1/{g+h[ln(f0/f)]+i[ln^2(f0/f)]+j[ln^3(f0/f)]-273.15;

ln^2(f0/f)的问题是将ln^2(f0/f)转换为代码。

这是(pow(ln(fo/f),2))ln^3(f0/f)pow(ln(f0/f),3)吗?

谢谢。

翻译表达式:

val = 1 / { g + h[ ln(f0 / f) ] + i[ ln^2(f0 / f) ] + j[ ln^3(f0 / f) ] - 273.15}

Java的

在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);

在Java中, ln^n(f0/f)为: Math.pow(Math.log(f0/f), n)

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);

为了理解Java中的随时可用的内置Math函数,您可以将java.lang.Math转换为javadoc

例如,您可以在其中找到log(double)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM