Показать сообщение отдельно
  #12 (permalink)  
Старый 08.02.2020, 10:23
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

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;
}

Последний раз редактировалось Malleys, 08.02.2020 в 10:50. Причина: Добавил проверку потенциально не простых чисел
Ответить с цитированием