一段html+javascript代码,用于查找输入中的数字是否为素数,然后显示结果
学校项目。我必须设计一个页面,其中包含一个输入框、一个将输入的数字发送到函数的按钮,以及一个显示结果的段落。这是我目前的进展,问题是每次都是假的。对不起,这个问题太琐碎了,我对网络编码完全是个新手一段html+javascript代码,用于查找输入中的数字是否为素数,然后显示结果,javascript,html,Javascript,Html,学校项目。我必须设计一个页面,其中包含一个输入框、一个将输入的数字发送到函数的按钮,以及一个显示结果的段落。这是我目前的进展,问题是每次都是假的。对不起,这个问题太琐碎了,我对网络编码完全是个新手 <!DOCTYPE html> <html> <head> <script> function isPrime($n) { $i=2; if ($n==2){ return true; } $sqrtN = sqrt($n); while ($
<!DOCTYPE html>
<html>
<head>
<script>
function isPrime($n)
{
$i=2;
if ($n==2){
return true;
}
$sqrtN = sqrt($n);
while ($i<= $sqrtN){
if ($n % $i ==0){
return false;
}
$i++;
}
return true;
}
</script>
</head>
<body>
Value: <input type="number" id="n"><br>
<input type="submit" value="Send" onclick="isPrime(n)">
</form>
<p id="derp">sdvfsdg</p>
<script>
document.getElementById("derp").innerHTML = isPrime(n);
</script>
</body>
</html>
基本上,在按下按钮之前,您要一次性地设置derp的内容
function isPrime($n)
{
$i=2;
if ($n==2){
document.getElementById("derp").innerHTML = "True";
}
$sqrtN = sqrt($n);
while ($i<= $sqrtN){
if ($n % $i ==0){
document.getElementById("derp").innerHTML = "False";
}
$i++;
}
document.getElementById("derp").innerHTML = "True";
}
而且不确定您是否真的需要$everywhere-这是一个PHP的东西以下是适用于您的案例的代码。。。您应该在输入值后单击执行代码
<!DOCTYPE html>
<html>
<head>
<script>
</script>
</head>
<body>
Value: <input type="number" id="n"><br>
<input type="submit" value="Send" onclick="checkPrime()"> <!--use function on click-->
</form>
<p id="derp">sdvfsdg</p>
<script>
function isPrime(num)
{
var isPrime = true; //initially set to true
for(var i=2; i<num; i++){
if(num%i == 0){ //if the num gets divide by any other number except itself
isPrime = false;
}
}
return isPrime;
}
function checkPrime(){ //function that gets called on send button click
var number = document.getElementById("n").value; //get the value of input
number = parseInt(number); //since it's a string,convert it into number
document.getElementById("derp").innerHTML = isPrime(number); //check if prime and display result
}
</script>
</body>
</html>
您根本没有使用输入字段值,这是您的错误 价值:
sdvfsdg
jdfs 函数x{ document.getElementById'derp'。innerHTML=isPrimeNumberdocument.getElementById'n'。值; } 功能isPrimen{ i=2; 如果n==2{ 返回true; } sqrtN=Math.sqrtN; document.getElementById'try'。innerHTML=n;首先,我从代码中删除了这些行,因为它们似乎与问题$sqrtN=sqrt$n无关;$i工作得很好,但不仅仅适用于100以下的数字。使用11位数字对其进行了测试,结果是正确的。谢谢alot@Kinook是的,很抱歉我编辑了所有数字的代码:忘记删除注释请接受如果你愿意,我很高兴能帮上忙。