random no.
Show older comments
hi, can i get random no. in specific range ?
between 19 , -19
thanks
1 Comment
Oleg Komarov
on 18 Mar 2012
Yes, you can.
Answers (4)
Image Analyst
on 18 Mar 2012
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 Comment
Jan
on 18 Mar 2012
While the solution in easy, not to say trivial, the suggestion to read the documentation is an will be valuable. +1
the cyclist
on 18 Mar 2012
0 votes
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
on 18 Mar 2012
0 votes
naively, this works: 38*(rand-0.5)
Sahyadri Vibhu
on 20 Mar 2012
0 votes
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)
Categories
Find more on Creating and Concatenating Matrices 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!