exponenta event banner

Случайные числа в определенном диапазоне

В этом примере показано, как создать массив случайных чисел с плавающей запятой, которые извлекаются из равномерного распределения в открытом интервале (50, 100).

По умолчанию rand возвращает нормализованные значения (от 0 до 1), полученные из равномерного распределения. Чтобы изменить диапазон распределения на новый диапазон, (a, b), умножьте каждое значение на ширину нового диапазона, (b - a) и затем сдвиньте каждое значение на a.

Сначала инициализируйте генератор случайных чисел, чтобы сделать результаты в этом примере повторяемыми.

rng(0,'twister');

Создайте вектор из 1000 случайных значений. Используйте rand функция для получения значений из равномерного распределения в открытом интервале, (50 100).

a = 50;
b = 100;
r = (b-a).*rand(1000,1) + a;

Проверьте значения в r находятся в пределах указанного диапазона.

r_range = [min(r) max(r)]
r_range =

   50.0261   99.9746

Результат находится в открытом интервале (50 100).

Примечание

Некоторые комбинации a и b теоретически позволяют включать в результаты a или b. На практике это крайне маловероятно.

См. также

Связанные темы