Top.Mail.Ru
Ответы

JS. Необходимо реализовать генератор нечётных случайных чисел в диапазоне между n и m включительно. (см. ниже)

Сам генератор я сделал, а как сделать именно нечетные числа, не знаю
Использовать if/else нельзя, только Math.




let n = 0;
let m = 100;
let range = Math.abs(m-n);


let num = Math.round(Math.random() * (range));
console.log(num);

По дате
По рейтингу
Аватар пользователя
Новичок

let n = 0;
let m = 100;
n |= 1; // если n чётное - добавляем 1
let range = (m + 1 >> 1) - (n >> 1); // кол-во нечётных чисел в заданном диапазоне

let num = Math.floor(Math.random() * range) * 2 + n;
console.log(num);

Аватар пользователя
Мастер

const random = (min, max) => {
const round = Math.round(Math.random() * (max - min + 1) + min);
return round % 2 ? round : random(min, max);
}
const
n = 50,
m = 100;
console.log(random(n, m));

Без проверки на четность ты это не реализуешь!

Аватар пользователя
Искусственный Интеллект

проверил на четность, если четное, то прибавил 1