random integer between 0 and 15 with equal probability

8 views (last 30 days)
Hi,
I am trying to generate a random integer between 0 and 15.
I have written the following code:
b=0;
B=15;
B = b + (B-b) * rand
Is it right?
Also, will the random integer generated from the above code have equal probability? Is not, how should the code be modified?

Accepted Answer

Matt J
Matt J on 15 Jul 2013
Edited: Matt J on 15 Jul 2013
B=randi([0,15])
  7 Comments
Stephen23
Stephen23 on 31 Aug 2015
When you read the randi documentation, its description states on the very first line "Uniformly distributed pseudorandom integers". This means the integers have equal probability. It also means that you should learn to read the documentation, because it tells you how MATLAB works.

Sign in to comment.

More Answers (2)

Azzi Abdelmalek
Azzi Abdelmalek on 15 Jul 2013
B1= ceil(b + (B+1-b) * rand)-1

Jan
Jan on 15 Jul 2013
This is not a hard proof, but a strong hint already:
b = 0;
B = 15;
R = b + (B-b) * rand(1, 1e6);
histc(R, unique(R))

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!