Random Numbers Within a Specific Range
This example shows how to create an array of random floating-point numbers that are drawn from a uniform distribution in the open interval (50, 100).
By default, rand
returns normalized values (between 0 and 1) that are drawn from a uniform distribution. To change the range of the distribution to a new range, , multiply each value by the width of the new range, , and then shift every value by .
First, initialize the random number generator to make the results in this example repeatable.
rng(0,'twister');
Create a vector of 1000 random values. Use the rand
function to draw the values from a uniform distribution in the open interval, (50,100).
a = 50; b = 100; r = (b-a).*rand(1000,1) + a;
Verify the values in r
are within the specified range.
r_range = [min(r) max(r)]
r_range = 1×2
50.0261 99.9746
The result is in the open interval, (50,100).
Note that some combinations of and make it theoretically possible for your results to include or . In practice, this is extremely unlikely to happen.