Генерация случайного простого числа - PullRequest
0 голосов
/ 09 мая 2020

Я знаю, как проверить, является ли число простым или нет, но теперь мне нужно сгенерировать случайное простое число. Как я могу это сделать, используя JavaScript?

const isPrime = num => {
    for(let i = 2, s = Math.sqrt(num); i <= s; i++)
        if(num % i === 0) return false; 
    return num > 1;
}

1 Ответ

1 голос
/ 09 мая 2020

вы можете использовать Math.floor (Math.random ()) для генерации случайного числа. если мы объединим два, ваш код будет выглядеть так:

function rnd(min, max) => {
   return Math.floor(Math.random() * max) + min;
}
function getPrime(min, max){
   x = rnd(min, max)
   if(isPrime(x)) return x;
   else return getPrime(min, max);
}

, а когда вам нужно случайное простое число, просто вызовите функцию getPrime с двумя параметрами: максимальное значение и минимальное значение.

UPDATE

вы можете сделать то же самое с while l oop или создать массив простых чисел и сгенерировать случайный индекс, а затем взять простое число в массиве.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...