Я пытаюсь найти 10 001-е число простых чисел. Я просмотрел другой код, написанный людьми, но я не совсем понимаю, что это значит. Я написал код в JavaScript, в котором я пытался использовать Sieve Of Eratosthenes. Я не уверен, в чем проблема. Похоже, что он должен работать правильно, но я получаю неправильный ответ.Поиск 10001st Prime Number - Project Euler
var compute = function() {
var prime = [2,3,5,7,11,13,17,19];
for(var i=20; i<=80000;i++) {
if(i%2!==0 && i%3!==0 && i%5!==0 && i%7!==0 && i%11!==0 && i%13!==0 && i%17!==0 && i%19!==0) {
prime.push(i);
}
}
console.log(prime[10000]);
};
compute();
31 * 37 = 1147, поэтому 1147 не является простым, но ваше состояние распознает его как простое. – Passerby
Простой поиск в Google: http://rosettacode.org/wiki/Sieve_of_Eratosthenes#JavaScript – jfriend00
Это может быть оптимизировано путем проверки номеров, которые заканчиваются на 1 3 7 или 9 вместо того, чтобы увеличивать на единицу. – Klik