Naps Tecnología y educación

Algoritmo de Cuadrados Medios en Python para la generación de números pseudoaleatorios.

Veremos cómo implementar el Algoritmo de Cuadrados Medios en Python para la generación de números pseudoaleatorios.

Algoritmos para la generación de números pseudo aleatorios

Entre los algoritmos para generar números pseudo aleatorios se cuentan: Algoritmo de cuadrados medios, algoritmos de productos medios, algoritmo de multiplicador constante, algoritmo lineal, algoritmo congruencial multiplicativo, algoritmo congruencial aditivo, algoritmos congruenciales no lineales.

En el presente artículo se analizará e implementará el algoritmo de cuadrados medios en Python .

Algoritmo de cuadrados medios en Python

El algoritmo

  1. Se elige como valor semilla un número de más de 3 dígitos (t=cantidad de dígitos del valor semilla)
  2. Se eleva ese número al cuadrado.
  3. Al valor que resultó, seleccione los t dígitos de en medio (si se requiere, utilice un 0 como primer dígito).
  4. Repetir desde el paso número 2 tomando éste nuevo número.

Implementación en Python

# Algoritmo de cuadrados medios, obtenido en https://naps.com.mx 
semilla = input("Escriba semilla: ")
tam1 = len(semilla)
print("Cantidad de dígitos: ", tam1)
numero1 = int(semilla)
for i in range(10):
	numero2 = numero1**2
	snumero2 = str(numero2)
	tam2 = len(snumero2)
	primerc = int((tam2 - tam1) / 2)

	snumero3 = snumero2[primerc:primerc+tam1]
	print ("{}.  {}".format(i,snumero3))
	numero1 = int(snumero3)

 

Explicación del programa

Variables

El programa utiliza las siguientes variables:

Explicación

 

Ejecución del programa

Veamos la ejecución de éste programa usando como semilla los valores 7543. Observamos que nos produce 10 números pseudo aleatorios. Si los deseáramos en formato decimal, en el rango de 0 a 1, solo se necesitaría incluir el punto decimal al inicio de la cifra.

 

En éste artículo vimos una forma de generar números pseudo aleatorios en Python. 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 Java, puedes consultarlo aquí: Algoritmo de Cuadrados Medios para la generación de números Pseudoaleatorios: Implementación en Java

Aprende Python a través de ejemplos

Bibliografía

  1. Coss(1996) Simulación, un enfoque práctico. Ed. Limusa.
  2. Turquía Moraleja (2013). Modelado y simulación de eventos discretos. Editorial UNED.

 

¿Qué te pareció este artículo?
  • Poco informativo ()
  • No era lo que buscaba ()
  • Regular ()
  • Interesante ()
  • Excelente ()
(Visto 8.591 veces)

Tu comentario

opiniones