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.

回答 (2 件)

Roger Stafford
Roger Stafford 2013 年 9 月 21 日

0 投票

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 件のコメント

BISWA
BISWA 2013 年 9 月 21 日
Thanks for responding. I had tried rand but the output was showing integers only.
Roger Stafford
Roger Stafford 2013 年 9 月 21 日
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 2013 年 9 月 21 日
Please post the code here which will generate an array of 50 floating numbers between 2.2 to 22.
Image Analyst
Image Analyst 2013 年 9 月 21 日
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.

サインインしてコメントする。

Simon
Simon 2013 年 9 月 21 日

0 投票

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

1 件のコメント

BISWA
BISWA 2013 年 9 月 21 日
Thank you very much. Its working just fine.

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

質問済み:

2013 年 9 月 21 日

Community Treasure Hunt

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

Start Hunting!

Translated by