Non continous range random number generation

Hi, I want to generate a random integer vector of range 1 to 10. The vector must contain all random integers in range except for 1 and 4. Regards, Muhammad Waqar Ahmed

1 Comment

Do you want to generate just one random number from 1 to 10? Or what is the length of the vector that you want to produce?

Answers (2)

V = [2, 3, 5, 6, 7, 8, 9, 10];
randV = V(randperm(length(V)));

3 Comments

Excellent!!! you are the man this worked :D
How about if i want to generate one number at a time?
V = [2, 3, 5, 6, 7, 8, 9, 10];
randV = V(randi(length(V)));
If you have the statistics toolbox, you can use the following idea:
randsample([2 3 5 6 7 8 9 10], 5, 1)
This produces 5 random numbers from the set, with replacement.

This question is closed.

Asked:

on 24 Apr 2013

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!