Javascript Сито Эратосфена с полем ввода текста
У меня возникли некоторые проблемы с реализацией JavaScript сита Эратосфена, найденного здесь. Я знаю, что в прошлом задавались некоторые вопросы по этому поводу, но это немного над моей головой. Я скопировал скрипт с веб-страницы и добавил только текстовое поле ввода сверху. Я пытаюсь получить ввод из текстового поля, затем код выведет простые числа до этого числа. Когда я вызываю функцию с помощью кнопки, ничего не происходит. Заранее благодарим за любую помощь, которую вы можете оказать мне.
function displayNextPrime(limit) {
// Sieve of Eratosthenes to determine the string of prime numbers? Then desiplay the next one?
var limit = document.getElementById("number").value;
var primes = [];
if (limit >= 2) {
var nums = new Array(limit - 1);
for (var i = 2; i <= limit; i++)
nums[i - 2] = i;
var last_prime;
var idx = 0;
while ((last_prime = nums[idx]) <= Math.sqrt(limit)) {
if (last_prime != null)
for (var i = idx + last_prime; i < limit - 1; i += last_prime)
nums[i] = null;
idx++;
}
for (var i = 0; i < nums.length; i++)
if (nums[i] != null)
primes.push(nums[i]);
}
return primes;
var primes = erasthenes(100);
if (typeof print == "undefined") {
print = (typeof WScript != "undefined") ? WScript.Echo : alert;
}
//primes.toString();
//document.getElementById("erasthenes").innerHTML = primes;
print(primes);
}