3

我正在使用维基百科上的“更接近的近似值”制作露点计算器。

如果用户输入任何两个变量,我希望能够计算露点。

有没有一种简单的方法可以做到这一点,而不是使用大量的 if 语句?

更具体地说:如果我想使用湿球温度而不是相对湿度怎么办?我是否必须创建一个新函数或使用 if 语句来排除一组变量?

目前我正在使用温度和相对湿度:

    $('#calculate').click(function(){
        //Get Temp
        var T = parseInt($('#val1').val());
        //Get RH
        var RH = parseInt($('#val2').val());
        //Get es and ex
        var es = 6.112*Math.exp(17.76*T/(T+243.5));
        var ex = (RH*es)/100;
        //Calculate Dew Point
        var Tdp = (243.5*Math.log(ex/6.112))/(17.67-Math.log(ex/6.112));
        $('#output').append("<p>Dew Point"+Tdp+"</p>");

    });
4

1 回答 1

1

仅供参考,求解非线性方程组通常是一个难题。尽你所能避免这种情况。

如果可以使用多对值来计算答案,我通常的方法是使用我给定的一对值来计算规范的值对,然后用它来进行真正的计算。此外,由于必须对输入进行排序以找出您获得的内容以便您可以进行 DWIM,因此为我将接受的每对输入设置单独的函数可能是有意义的。(或者它可能不取决于程序中的控制流,你比我更清楚这一点。)

于 2011-05-12T16:53:48.350 回答