How to generate a random REAL NUMBER VECTOR with a range?

2 views (last 30 days)
How to generate a random REAL NUMBER VECTOR with a range?
I can only generate a random INTEGER vector with a range, which is randi([low, high], column, row) but I don't know how to create a random number vector with a range... I tried rand([low, high], column, row) and an error message popped out saying "Error using rand Size inputs must be scalar."

Accepted Answer

michio
michio on 27 Oct 2017
Edited: michio on 27 Oct 2017
In general, you can generate N random numbers in the interval (a,b) with the formula
 r = a + (b-a).*rand(N,1);

More Answers (1)

Image Analyst
Image Analyst on 27 Oct 2017
Try this. I do it both ways: to get integers and floating point numbers. Use whichever you want:
low = 10;
high = 20;
numElements = 80;
% Generate integer vector.
rIntegers = randi([low, high], 1, numElements)
% Generate floating point (fractional) number vector.
rDoubles = low + (high-low) * rand(1, numElements)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!