gpt4 book ai didi

javascript - Prime 检查 JavaScript

转载 作者:行者123 更新时间:2023-11-29 16:48:22 25 4
gpt4 key购买 nike

这段代码我做错了什么?它无法在控制台上打印任何内容。这是问题的描述:

实现一个 javascript 函数,它接受一个包含整数 N 的数组,并使用一个表达式来检查给定的 N 是否为素数(即它可以被除掉,只有它自己和 1 没有余数)。

var n = ['2'];

function isPrime(n) {

if (n < 2) {
return false;
}

var isPrime = true;

for(var i = 2; i < Math.sqrt(n); i += 1) {
if (n % i === 0) {
isPrime = false;
}
}

return isPrime;
}

return isPrime(n);

最佳答案

您的代码中有几个错误。

首先,您需要检查 2 和 Math.sqrt(n) 之间的每个整数(包括 2 和 Math.sqrt(n))。您当前的代码为 4 返回 true。

我不认为这是在一个函数中,所以你需要从 return isPrime(n) 中省略 return 并将其替换为一个打印出函数的返回值,如 alertconsole.log

n 不是一个数字,它是一个数组。您需要将 n 设为一个数字,或者使用 isPrime(n[0]) 调用该函数。

正确的代码是

var n = 2;

function isPrime(n) {

if (n < 2) {
return false;
}

var isPrime = true;

for(var i = 2; i <= Math.sqrt(n); i += 1) {
if (n % i === 0) {
isPrime = false;
}
}

return isPrime;
}

alert(isPrime(n));

注意:可以把n += 1改成n++,效果一样。

关于javascript - Prime 检查 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38324950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com