簡體   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