Floating numbers generation in a range

I Want to generate an array of 100 Different random floating numbers in the range 2.2 to 22. Please help me with this.

Antworten (2)

Roger Stafford
Roger Stafford am 21 Sep. 2013

0 Stimmen

What kind of probability distribution do you wish these numbers to have over this interval? If it is to be uniform use 'rand' with appropriate scaling and offset.

4 Kommentare

BISWA
BISWA am 21 Sep. 2013
Thanks for responding. I had tried rand but the output was showing integers only.
Roger Stafford
Roger Stafford am 21 Sep. 2013
I think you were using 'randi', not 'rand'. The 'randi' function returns only integers, whereas 'rand' returns fractional values. The probability of getting an integer output from 'rand' is exceedingly small. I have personally never seen one.
BISWA
BISWA am 21 Sep. 2013
Please post the code here which will generate an array of 50 floating numbers between 2.2 to 22.
You never looked up rand() in the help did you? Otherwise you would have noticed Example 1 which solves your problem
Example 1
Generate values from the uniform distribution on the interval [a,b]:
r = a + (b-a).*rand(100,1);
and I'm pretty sure you would have figured out a is 2.2 and b is 22 and you wouldn't have needed to wait for Simon to do it for you. Please mark the answer as Accepted.

Melden Sie sich an, um zu kommentieren.

Simon
Simon am 21 Sep. 2013

0 Stimmen

19.8*rand(50, 1) +2 .2

Kategorien

Mehr zu Random Number Generation finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 21 Sep. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by