# how to generate random integer number in a fixed range in MATLAB, like between 1 to 10

642 views (last 30 days)
mukim on 10 Jan 2013
Commented: Hassaan on 17 Feb 2024
i want to generate random number between 1 to 10 answer like: 7 4 1 8 5 2 10 6 9 3
Siddharth Gupta on 7 Nov 2019
x=randi([1,10],1,10);

Sean de Wolski on 10 Jan 2013
doc randi
and simple example:
randi([1 10],40)
Hassaan on 17 Feb 2024
If repititions are not required:
c = randperm(20);
disp(c)
5 15 18 17 1 19 14 16 10 20 12 9 11 2 3 4 13 7 8 6

Jan on 10 Jan 2013
If repetitions are not wanted:
c = randperm(10);
Nitish Jha on 16 Mar 2021
Hii...Prioduyti and others...How to use this code with a component used in simulink .I want to use randi function with a component of matlab simulink (lead screw)..how to link this function with that....Please guide.
Walter Roberson on 16 Mar 2021

Ruochen on 26 Sep 2019
Use randsample
if the range is 1 to n:
y = randsample(n,k) returns k values sampled uniformly at random, without replacement, from the integers 1 to n.
if the range is say 8 to 23, choose 6 randon mumbers
population = 8:23;
y = randsample(population,6)
y = randsample(population,k) returns a vector of k values sampled uniformly at random, without replacement, from the values in the vector population.