Generating random number between 1 to 10 but having discrete steps

4 visualizzazioni (ultimi 30 giorni)
Hi,
I want to generate random time steps to test my function. As i have to give random time and it will generate output on that time value. any simple solution.
As i have tried before this method.
if true
N =10;
randperm(N);
%giving me
output = 5 2 10 3 8 1 9 7 4 6
%But i want output as
output = 1.857 3.597 2.684 7.158 9.516 5.535
end
Need your guidance.

Risposta accettata

Guillaume
Guillaume il 3 Feb 2016
output = rand(1, 10) * 10;
There's no guarantee that the 10 values are unique but the probability that you have two identical values is extremely small.
  1 Commento
Joseph Cheng
Joseph Cheng il 3 Feb 2016
Modificato: Joseph Cheng il 3 Feb 2016
to expand on that why not use what you have but add the decimal as rand as well.
N =10;
output = randperm(N)+rand(1,10)
or instead of randperm you can use randi(10,1,numtests)+rand(1,numtests) where numtests is the number of test cases you're putting in.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Random Number Generation in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by