How to generate a random number between 0 and 180

6 visualizzazioni (ultimi 30 giorni)
Victoria Helm
Victoria Helm il 8 Lug 2021
Modificato: DGM il 12 Lug 2021
Will the following code work to generate a random integer between 0 and 180?
length = 180;
random_location = randi([0 length], 1);

Risposte (2)

Image Analyst
Image Analyst il 12 Lug 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 il 8 Lug 2021
Modificato: DGM il 8 Lug 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 Commenti
Victoria Helm
Victoria Helm il 12 Lug 2021
What is the purpose of including the 1E6?
DGM
DGM il 12 Lug 2021
Modificato: DGM il 12 Lug 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.

Accedi per commentare.

Categorie

Scopri di più su Random Number Generation in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by