gpt4 book ai didi

javascript - 或循环中 If 语句中的 boolean 表达式

转载 作者:行者123 更新时间:2023-11-30 16:03:59 28 4
gpt4 key购买 nike

当我通过 Or boolean 语句检查数字是否为质数时,它没有完成检查,而是返回整个数组。

function sumPrimes(num) {
var arr = [];

var prime;
for(var i = 1; i <=num; i++){
if(i%2 !== 0 || i%3 !== 0 || i%5 !== 0){
arr.push(i);
}
}
return arr;
}

sumPrimes(10);

最佳答案

我建议你只买一个 "get prime numbers algorithm"像这样:

function getPrimes(max) {
var sieve = [], i, j, primes = [];
for (i = 2; i <= max; ++i) {
if (!sieve[i]) {
// i has not been marked -- it is prime
primes.push(i);
for (j = i << 1; j <= max; j += i) {
sieve[j] = true;
}
}
}
return primes;
}

然后使用 reduce 总结

var sumPrimes = function(num) {
var primes = getPrimes(num)
var sum = primes.reduce(function(sum, prime) {
return sum + prime
}, 0)
}

关于javascript - 或循环中 If 语句中的 boolean 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37307182/

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