How to generate a random number between 0 and 180

6 views (last 30 days)
Will the following code work to generate a random integer between 0 and 180?
length = 180;
random_location = randi([0 length], 1);

Answers (2)

Image Analyst
Image Analyst on 12 Jul 2021
Don't use length as a variable name because it's the name of a built-in function. Try it this way:
% Generate a single integer, randomly chosen from the range 0 to 180, inclusive.
maxValue = 180; % Not using length because it's a built-in function.
randomInteger = randi([0, maxValue], 1, 1) % Generate the column vector.

DGM
DGM on 8 Jul 2021
Edited: DGM on 8 Jul 2021
Yes.
length = 180;
random_location = randi([0 length],1E6,1);
[min(random_location) max(random_location)]
ans = 1×2
0 180
histogram(random_location,'binmethod','integers')
  2 Comments
DGM
DGM on 12 Jul 2021
Edited: DGM on 12 Jul 2021
That's the height of the array; i'm specifying that I want a 1000000x1 column vector from randi(). The reason I chose to get a large vector instead of 1 number is so that I had enough samples to demonstrate (via histogram) that the results are uniformly distributed between the specified limits. You can specify whatever output size you need.

Sign in to comment.

Categories

Find more on Random Number Generation 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!