Veremos el Algoritmo de Cuadrados Medios y cómo implementarlo utilizando el lenguaje de programación Java.
Un número pseudo aleatorio es un número que cumple las funciones de un número aleatorio pero es generado a través de un algoritmo matemático. Si conocemos el algoritmo que se utilizó para generar una secuencia de números pseudo aleatorios, así como algunos valores iniciales, se puede predecir toda la secuencia de números que se van a generar. Por el contrario, es imposible predecir el valor siguiente de una secuencia de números genuinamente aleatorios. (Turquía, 2013).
Existen varios algoritmos, entre los que se cuentan: Algoritmo de cuadrados medios, algoritmos de productos medios, algoritmo de multiplicador constante, algoritmo lineal, algoritmo congruencia multiplicativo, algoritmo congruencia aditivo, algoritmos congruencia les no lineales.
En el presente artículo se analizará el algoritmo de cuadrados medios y se implementará en el lenguaje de programación Java.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Scanner entrada = new Scanner(System.in); String semilla, snumero2, snumero3; int tam1, tam2, i, primerc; long numero1, numero2; System.out.println("Escriba semilla: "); semilla = entrada.next(); tam1 = semilla.length(); System.out.println("Cantidad de digitos: " + tam1); numero1 = Integer.parseInt(semilla); for (i=1; i<=10; i++){ numero2 = (long)Math.pow(numero1,2); snumero2 = Long.toString(numero2); tam2 = snumero2.length(); primerc = (tam2-tam1) / 2; snumero3 = snumero2.substring(primerc,primerc+tam1); System.out.println(i + ". " + snumero3); numero1 = Integer.parseInt(snumero3); } |
El programa utiliza las siguientes variables:
Si deseas que aparezcan en formato decimal entre 0 y 1, puedes utilizar estas instrucciones:
numeror = Double.parseDouble(“.”+snumero3);
System.out.println(i + “. ” + snumero3 + “(” + numeror + “)”);
Este algoritmo nos muestra una forma de generar números pseudo aleatorios en Java. Los números pseudo aleatorios son una parte importante en la elaboración de modelos de simulación.
Si deseas ver éste algoritmo implementado en Python, puedes consultarlo aquí: Algoritmo de Cuadrados Medios en Python para la generación de números pseudoaleatorios.