El siguiente algoritmo genera números aleatorios no uniformes. La premisa es dar un porcentaje de probabilidad para que aparezca cierto número en un rango dado.
Ejemplo:
Generar un número aleatorio del 1 al 350 del cual el número 56 tenga un 34.9% de probabilidad de que salga elegido. Las entradas serían las siguientes:
rango = 350
numero = 56
ratio = 0.349
Código Java 1 (AleatorioCondicionado1.java)
package aleatoriocondicionado1;
public class AleatorioCondicionado1 {
public static void main(String[] args) {
RandA randa = new RandA();
int max = 350;
int num = 56;
float ratio = 0.349F;
int valor = randa.getRandA(max, num, ratio);
System.out.println("Rango: [1:" + max + "]");
System.out.println("Numero: " + num);
System.out.println("Ratio%: " + ratio);
System.out.println("Valor obtenido: " + valor);
}
}
Código Java 2 (RandA.java):
package aleatoriocondicionado1;
import java.util.Random;
public class RandA {
Random r = new Random();
int getRandA(int max, int num, float ratio) {
float x;
int rand = r.nextInt(max) + 1;
x = max * ratio;
if (rand <= x) {
return num;
} else {
do {
rand = r.nextInt(max) + 1;
} while (rand == num);
return rand;
}
}
}
Resultado:
run:
Rango: [1:350]
Numero: 56
Ratio%: 0.349
Valor obtenido: 56
BUILD SUCCESSFUL (total time: 1 second)
Nota: Si ejecutamos muchas veces el mismo código se comprueba de que el número 56 tiende a salir en una proporción mayor al resto de números, concretamente saldría en un 34.9 % de los casos.
Una forma sencilla y rápida de aprender JAVA, observando y deduciendo cómo se comporta el lenguaje a través de ejemplos prácticos.
Archivo del blog
-
►
2012
(38)
- ► septiembre (3)
-
►
2020
(12)
- ► septiembre (1)
-
▼
2024
(29)
-
▼
agosto
(17)
- Problema del Viajante de Comercio TSP (V.1). Métod...
- Problema del Viajante de Comercio TSP (V.2). Métod...
- Problema del Viajante de Comercio TSP (V.3). Métod...
- Problema del viajante de Comercio TSP (IV.2). Méto...
- Problema del Viajante de Comercio TSP (V.3.1). Aná...
- Matriz de conectividad circular.
- Problema del viajante de Comercio TSP (VI). Método...
- Problema del viajante de Comercio TSP (VII). Métod...
- Problema del viajante de Comercio TSP (VIII). Méto...
- Problema del viajante de Comercio TSP (IX). Método...
- Problema del viajante de Comercio TSP (X). Método ...
- Problema del viajante de Comercio TSP (XI). Método...
- Problema del viajante de Comercio TSP (XII). Métod...
- Problema del viajante de Comercio TSP (XIII). Méto...
- Problema del viajante de Comercio TSP (XIV). Métod...
- Problema del viajante de Comercio TSP (XV). Método...
- Juegos VII. La Mansión Misteriosa: Un juego de tex...
-
▼
agosto
(17)
jueves, 3 de noviembre de 2016
Suscribirse a:
Entradas (Atom)
Con la tecnología de Blogger.