This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

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, (a, b), multiply each value by the width of the new range, (ba) and then shift every value by a.

First, initialize the random number generator to make the results in this example repeatable.


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 =

   50.0261   99.9746

The result is in the open interval, (50,100).


Some combinations of a and b make it theoretically possible for your results to include a or b. In practice, this is extremely unlikely to happen.