how to create random double in specific range?
30 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
fred bnm
am 5 Dez. 2016
Bearbeitet: Image Analyst
am 1 Apr. 2023
HI, randi function Can only generate integers in specific range.
num = randi([1,3],[1,10],'double');
how to create double numbers in range such as [0.2,1.2]?
0 Kommentare
Akzeptierte Antwort
Cyrus
am 5 Dez. 2016
Bearbeitet: Image Analyst
am 1 Apr. 2023
For generating double numbers you can use:
r = rand( 1, 3 ,'double')
and to have them in a specific range you can use the following source: https://www.mathworks.com/help/matlab/math/floating-point-numbers-within-specific-range.html
which is:
a = 50;
b = 100;
r = (b-a).*rand(1000,1) + a;
thus, finally:
numElements = 10;
a = 0.2;
b = 1.2;
r= (b-a).*rand(1, numElements, 'double') + a; % [SL: added the missing "+a" term]
The result:
r
0 Kommentare
Weitere Antworten (1)
Carolina Escobar
am 1 Apr. 2023
e = rand(0.1,1)
1 Kommentar
Steven Lord
am 1 Apr. 2023
This will throw an error.
e = rand(0.1, 1)
As the error message indicates, the size inputs to rand must contain integer values.
Siehe auch
Kategorien
Mehr zu Random Number Generation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!