# Select a random number from a set

488 views (last 30 days)
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?
Nour Ahmed on 9 Jan 2021
Yesss thankk youuu

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 on 11 Dec 2020
for i=1:5
arrayA(i) = A(randi(length(A));
arrayB(i)= B(randi(length(B));
end

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

### 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!

Translated by