动力学公式

时间:2014-05-13 16:46:10

标签: javascript html

我已经写了 javascript html 代码,有人可以解决这个问题(我是初学者)。我得到的输出Ke = NaN而不是值,我尝试使用parseInt,但也许我没有以正确的方式做到这一点。请帮忙。提前致谢。我的代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Kinetic Energy of Molecules</title>

    <script language="javascript">

        function mycalc(){

            var x = document.getElementById("variablex").value;
            parseInt(document.getElementById("variablex").value);
            var v = document.getElementById("variablev").value;
            parseInt(document.getElementById("variablev").value);

            var a = ( 2/3 );
            var b = ( (v*v*v) + (Math.sin(30)) );
            var c = ( 2 * (Math.cos()*Math.cos()) * x);

            var d = ( a * (b/c));

            alert("Ke = " + d)
        }


    </script>

</head>

<body marginwidth="70">

    <h3>FORMULA:</h3>
    <table>
        <tr>
            <td>
            Ke = <u>2</u> * <u>(v^3 + sin30)</u> 
             </td>
        </tr>
        <tr>
            <td>
            &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp;3 &nbsp (2 * cos^2 * x) 
            </td>
        </tr>    
    </table>
    <br>
    <form>
        Enter value for v: 
        <input type="text" name="vv" id="variablev" placeholder="variable v" size="5">

        <br>

        Enter value for x: 
        <input type="text" name="vx" id="variablex" placeholder="variable x" size="5">

        <br>

        <input type="button" value="calc" onClick="mycalc()">

    </form>


</body>
</html>

1 个答案:

答案 0 :(得分:3)

Math.sin(30)错了 - 三角函数以弧度为单位,而不是度。此外,如果它是一个常数,你也可以写... 0.5

Math.cos()*Math.cos()并不代表什么,因为你没有提供论据。这就是你得到NaN的原因。

你的意思是?

var Ke = 2 * (Math.pow(v,3) + 0.5) / (6 * Math.pow(Math.cos(x/180*Math.PI),2));