用javascript编写方程式

Doing an equation in javascript?

本文关键字:方程式 javascript      更新时间:2023-09-26

我有这个代码,无论我在文本框中输入什么数字,它总是输出9。方程为0.25x^(2)+9,^(2的均方。

<html>
<head>
    <script>
    function calc() {
        var number = parseInt(document.getElementById('input').value);
        var one = parseInt(0.25*number);
        var two = parseInt(one*one);
        var three = parseInt(two+9) ;
        var sum = parseInt(three);
        document.getElementById('num').innerHTML = sum;
    }
    </script>
</head>
<body>
<p>$10 fee and 2 Commands are free!</p>
<input id="input" type="number" name="quantity" min="1" max="1000"></input><div id="num"></div>
<button onclick="calc()">Calculate</button>
</body>

帮助?

Fiddle

我有这个代码,无论我输入什么数字,它总是输出9文本框

这是因为当您执行(0.25 * 0.25)时,它将变为0.625。其上的CCD_ 3使其成为CCD_。

这意味着,除非你的数字小于4,否则它将始终打印9,因为(0+9)->9(parseInt后为0)

此外,如果数字为4,则代码输出10,如果数字是8,则输出13

正确的公式应该是

sum = Math.pow( number * 0.25, 2 ) + 9

我认为,当你每次将其四舍五入为0时,都将其强制转换为int,然后当你添加+9时,你总是会得到9作为答案:

    function calc() {
        var number = parseInt(document.getElementById('input').value);
        var one = 0.25*number;
        var two = one*one;
        var three = two+9;
        var sum = three;
        document.getElementById('num').innerHTML = sum;
    }

此外,您还有一个方法错误

var one = 0.25*number;
var two = one*one;

两个就像说two = o.25^2 * x^2,而不是你想要的two = 0.25 * x^2,所以把它改为:

function calc() {
        var number = parseInt(document.getElementById('input').value);
        var one = number*number;
        var two = 0.25*one;
        var three = two+9;
        var sum = three;
        document.getElementById('num').innerHTML = sum;
    }

还有一种更简单的方法:

        function calc() {
            var number = parseInt(document.getElementById('input').value);
            var sum = 0.25*(number*number) + 9;
            document.getElementById('num').innerHTML = sum;
        }