Select a random number from a set

409 views (last 30 days)
Matt Medley
Matt Medley on 8 Nov 2011
Answered: Souarv De on 8 Jun 2021
I'm simulating a single blackjack hand and am trying to "draw" a card. I can't use the randi function because I don't want all possibilities to have the same probability of being selected. So what I have done is created a row vector , (x), of all the possible card values. Now I would like draw a random number from this selection for my 'draw' function. Thanks for the help!
x = [1,2,3,4,5,6,7,9,10,10,10,10,11] theCard = randi?

Sign in to comment.

Answers (2)

Lucas García
Lucas García on 8 Nov 2011
There are a few ways to do it. For example, using randi to select in which position is the card that you will extract.
pos = randi(length(x));
card = x(pos);
Vineeth Krishnan
Vineeth Krishnan on 11 Dec 2020
for i=1:5
arrayA(i) = A(randi(length(A));
arrayB(i)= B(randi(length(B));

Sign in to comment.

Souarv De
Souarv De on 8 Jun 2021
rand_Pos = randperm(length(x),1)
card = x(rand_Pos)

Community Treasure Hunt

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

Start Hunting!

Translated by