@dmitriyivvvv

Формула случайных чисел js?

Добрый день! Вопрос скорее всего очень тупой, но вот суть: допустим мне надо получить случайное число в диапазоне от 0 до n(не включая n), с помощью метода Math.random(). Тогда для этого достаточно умножить полученное с помощью этого метода число на n? Пример надо получить случайное число от 0 до 399(включительно) то Math.floor(Math.random() * 400) ?
  • Вопрос задан
  • 1717 просмотров
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Да. Вы правильно написали.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@bkosun
// Возвращает случайное число между 0 (включительно) и 1 (не включая 1)
function getRandom() {
  return Math.random();
}

// Возвращает случайное число между min (включительно) и max (не включая max)
function getRandomArbitrary(min, max) {
  return Math.random() * (max - min) + min;
}

// Возвращает случайное целое число между min (включительно) и max (не включая max)
// Использование метода Math.round() даст вам неравномерное распределение!
function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min)) + min;
}


https://developer.mozilla.org/ru/docs/Web/JavaScri...
Ответ написан
Комментировать
@Guccigang
В твоем примере, если Math.random выдаст число 400, то Math.floor выдаст так же 400 (посмотри пример здесь: https://developer.mozilla.org/en-US/docs/Web/JavaS... ).

Первое что приходит на ум, задействуй if statement. Напиши функцию, которая определяет случайное число из диапазона и добавь проверку: if( number === 400) {return 399};

Но, думаю, должны быть более элегантные решения.
Ответ написан
Ваш ответ на вопрос

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

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