JavaScript:output";“南”Can';我找不到错误
这应该是一个使用JavaScript的二次方程根查找程序。我编写了代码,但显然有一个错误,因为当我单击“计算”时,结果是“x1:NaN;x2:NaN”。谁能告诉我这个错误吗JavaScript:output";“南”Can';我找不到错误,javascript,nan,equation,quadratic,Javascript,Nan,Equation,Quadratic,这应该是一个使用JavaScript的二次方程根查找程序。我编写了代码,但显然有一个错误,因为当我单击“计算”时,结果是“x1:NaN;x2:NaN”。谁能告诉我这个错误吗 function result() { var a = document.getElementById('a'); var b = document.getElementById('b'); var c = document.getElementById('c'); var d = Math.sqrt(b*
function result() {
var a = document.getElementById('a');
var b = document.getElementById('b');
var c = document.getElementById('c');
var d = Math.sqrt(b*b-4*a*c);
var divide = (2 * a);
var x1 = (-b + d)/divide;
var x2 = (-b - d)/divide;
document.write("x1: " + x1 + "<br/>");
document.write("x2: " + x2 + "<br/>");
}
函数结果(){
var a=document.getElementById('a');
var b=document.getElementById('b');
var c=document.getElementById('c');
var d=数学sqrt(b*b-4*a*c);
var除法=(2*a);
var-x1=(-b+d)/divide;
var x2=(-b-d)/除;
文件。写入(“x1:+x1+”
);
文件。写入(“x2:+x2+”
);
}
您正在为输入元素分配
var a = document.getElementById('a');
但是您需要输入的值
var a = document.getElementById('a').value;
如果你需要一个,你可以用一个
你的代码应该张贴在这里。Stackoverflow被设计成一个问题和答案的存储库,所以这里的内容应该永远可用;您链接的站点可能会更改(如果您解决了问题,可能会更改)。请发布代码而不是链接。此外,谷歌搜索“javascript math nan”得到的结果是#1。1:最好直接在这里复制javascript,不鼓励链接。2:您的
a
、b
和c
变量是对HTML元素的引用,而不是对输入值的引用。使用.value
属性获取实际输入内容。例如:a=Number(document.getElementById('a').value)
此外,您的代码没有提供否定的判别式,因此只要根是复杂的,就会得到NaN。
var a = +document.getElementById('a').value;
// ^