how to create random double in specific range?
50 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
fred bnm
el 5 de Dic. de 2016
Editada: Image Analyst
el 1 de Abr. de 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 comentarios
Respuesta aceptada
Cyrus
el 5 de Dic. de 2016
Editada: Image Analyst
el 1 de Abr. de 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 comentarios
Más respuestas (1)
Carolina Escobar
el 1 de Abr. de 2023
e = rand(0.1,1)
1 comentario
Steven Lord
el 1 de Abr. de 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.
Ver también
Categorías
Más información sobre Random Number Generation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!