random no.

hi, can i get random no. in specific range ?
between 19 , -19
thanks

回答(4 个)

Image Analyst
Image Analyst 2012-3-18
You didn't read the help on rand(), did you? If you had, you would have seen the answer to your question as the very first example:
Example 1
Generate values from the uniform distribution on the interval [a, b]:
r = a + (b-a).*rand(100,1);
Needless to say, a=-19 and b = 19 in your case, and 100 is the number of random numbers to be generated, or:
r = -19 + 38 .* rand(100, 1);

1 个评论

Jan
Jan 2012-3-18
While the solution in easy, not to say trivial, the suggestion to read the documentation is an will be valuable. +1

请先登录,再进行评论。

the cyclist
the cyclist 2012-3-18

0 个投票

Depending on whether you want to draw from a discrete or a continuous distribution, you will likely want to use either the randi() or unifrnd() function.
Sean Lawson
Sean Lawson 2012-3-18

0 个投票

naively, this works: 38*(rand-0.5)
Sahyadri Vibhu
Sahyadri Vibhu 2012-3-20

0 个投票

As Sean Lawson said in the above comment, using -19+38*rand will generate a random real number in the range (-19 19)
to generate random integers use
randi ([lower_limit upper_limit],a,b,c...)
which generates an axbxcx..... random integer array in the range (lower_limit upper_limit)

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

提问:

2012-3-18

Community Treasure Hunt

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

Start Hunting!

Translated by