How to generate the random number with restrictions?

2 views (last 30 days)
For [1 2 3 ........35], I want to generate random number but the restriction is i want random numbers from [1 2 3...28] as [1 5 9 13 17 21 25] and then after any random number from [29 30 ...35] as normal.

Accepted Answer

Guillaume
Guillaume on 7 Jan 2016
Edited: Guillaume on 7 Jan 2016
Your question is not very clear, what is a random number "as normal"?
Anyway, to get random numbers from a specific pool of numbers, generate random indices that you use to pick numbers from the pool:
pool = 1:4:25; %pool of numbers pick
numbers = pool(randi(numel(pool), 1, 28)) %choose 28 values from the pool at random.

More Answers (1)

Andrei Bobrov
Andrei Bobrov on 7 Jan 2016
a1 = 1:28
a2 = 29:35
out = [a1(randperm(numel(a1),7)),a2(randi(numel(a2)))]

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!