Código que genera números al azar en un intervalo
Publicado por jesus (1 intervención) el 16/02/2021 16:30:13
Buenas, se desea generar un vector de números aleatorios de 19x5000(que no se repitan las columnas ni las filas) y que cumpla con los siguientes criterios :
1). cada numero generado aleatorio debe estar en un rango diferente entre 0 y los porcentajes que se muestran a continuación; siendo estos 220*[3; 2.9; 2.5; 1.5; 2.5; 2; 0.5; 2; 1.5; 0.5; 1.5; 1; 0.3; 0.5; 0.5; 0.3; 0.5; 0.5; 0.3]/100
ej.: para el primer numero debe estar en el rango de 0 y 220*3/100 (0-6.6), para el segundo debe estar en el rango de 0 y 220*2.9/100 (0-6.38) y así sucesivamente.
2) Los 19 números generados en los rangos establecidos a su vez no deben exceder un 3% calculado con la siguiente formula:
T=sqrt(sum(vector generado.^2))/220*100
3) los vectores que cumplan con este criterio serán almacenado hasta obtener una matriz 19x5000.
muchas gracias, adjunto mi código, pero no se como optimizarlo debido a que se demora horas sin encontrar las condiciones que necesito.
Había leído que para generar numero aleatorios diferentes utilizara el comando rng('shuffle')

1). cada numero generado aleatorio debe estar en un rango diferente entre 0 y los porcentajes que se muestran a continuación; siendo estos 220*[3; 2.9; 2.5; 1.5; 2.5; 2; 0.5; 2; 1.5; 0.5; 1.5; 1; 0.3; 0.5; 0.5; 0.3; 0.5; 0.5; 0.3]/100
ej.: para el primer numero debe estar en el rango de 0 y 220*3/100 (0-6.6), para el segundo debe estar en el rango de 0 y 220*2.9/100 (0-6.38) y así sucesivamente.
2) Los 19 números generados en los rangos establecidos a su vez no deben exceder un 3% calculado con la siguiente formula:
T=sqrt(sum(vector generado.^2))/220*100
3) los vectores que cumplan con este criterio serán almacenado hasta obtener una matriz 19x5000.
muchas gracias, adjunto mi código, pero no se como optimizarlo debido a que se demora horas sin encontrar las condiciones que necesito.
Había leído que para generar numero aleatorios diferentes utilizara el comando rng('shuffle')
Valora esta pregunta


0