@parsifaly

Как вывести простые числа с помощью JavaScript?

Предположим, пользователь вводит диапазон чисел (10;31). Как вывести все простые числа из этого диапазона?
  • Вопрос задан
  • 610 просмотров
Пригласить эксперта
Ответы на вопрос 2
sergiks
@sergiks Куратор тега JavaScript
♬♬
например, перебирать и проверять каждое на то, простое ли оно. Чётные (кроме 2) сразу отбросить.
for (let n = 11; n <= 31; n = n + 2) {
  if (isPrime(n)) {
    console.log(n);
  }
}


Сама проверка – достаточно проверить, делится ли без остатка на целые от 3 (мы договорились чётные не присылать) до квадратного корня из N.
function isPrime(n) {
  for (let i = 3, root = Math.sqrt(n); i <= root; i++) {
    if (n % i === 0) return false;
  }
  
  return true;
}
Ответ написан
Mothersprogrammer
@Mothersprogrammer
Если ваш вопрос еще актуален, то одно из решений:
var primeTester = function(v) {
  
		if (isNaN(v) || n < 1 || Math.floor(v) != v) {  // Тут проверка корректное ли значение
			return 'The input number must be a positive integer, please enter a correct value';
		}
		if (v === 2) { //Ну тут и так понятно
			return true;
		}
		if (v % 2 === 0) { //проверка четное ли число
			return false;
		}

		for (var i = 3, limit = Math.sqrt(v); i <= limit; i+=2) { // ну и проверка, простое ли число
			if (v % i === 0) {
				return false;
			}
		}
		return v;
	};

// тут уже ваш код для реализации проверки диапазона
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы