Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   найти простое число (https://javascript.ru/forum/misc/70505-najjti-prostoe-chislo.html)

рони 07.02.2020 13:26

RuBrain,
предположим число 9, нет смысла искать делитель больше 3, три это корень из 9, максимальный делитель числа - это его квадратный корень!

Malleys 08.02.2020 10:23

Alexandroppolus, откуда x на строке №3? Разве число 2 — составное?

function isPrime(num) {
	if(
		num < 2 ||
		num > 2 && num % 2 === 0 ||
		num > 3 && num % 3 === 0 ||
		num > 6 && (num - 1) % 6 !== 0 && (num + 1) % 6 !== 0
	) return false;

	for(var i = 6, sqrt = 1 + Math.sqrt(num); i <= sqrt; i += 6)
		if(num % (i - 1) === 0 || num % (i + 1) === 0) return false;

	return true;
}


Часовой пояс GMT +3, время: 18:28.