Visual Basic.NET - Pseudo Aleatorio - Arimética Modular

 
Vista:
Imágen de perfil de Andrés
Val: 48
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Pseudo Aleatorio - Arimética Modular

Publicado por Andrés (27 intervenciones) el 10/08/2018 18:18:38
Buenos días amigos...

Me encuentro cursando la materia de Métodos Numéricos en la U, y nos han puesto el siguiente ejercicio de Aritmética Modular el cual no tengo ni idea de plantearlo, se trata de lo siguiente:

Se tiene la fórmula x= (a*Xo+b)%m en la cual se evidencian 4 variables a, b, Xo, m
Xo: Semilla
m= longitud de cadena

Este algoritmo se trata que partir de unos valores de entrada que se le de a las 4 variables genere números aleatorios aplicados a esa formula y este finalice cuando uno de los numero se repita, aquí un ejemplo:

x= (a*Xo+b)%m

a = 11
b = 9
Xo = 3 (El valor de Xo varia dependiendo del resultado anterior) (Este valor es el modulo o residuo de la division)
m = 15

Xo = 3
X1 = 12 -------------->X1= (11*3+9)%15 = 42%15 = 12
X2 = 6 ---------------> X2= (11*12+9)%15 = 141%15 = 6
X3 = 0 ---------------> X3= (11*6+9)%15 = 75%15 = 0
X4 = 9 ---------------> X4= (11*0+9)%15 = 9%15 = 15
X5 = 3 ---------------> X5= (11*9+9)%15 = 108%15 = 3

Xo= & X5= 3 "Fin del ciclo"

De esto se trata amigos, quisiera que me pudieran ayudar con eso tengo que entregarlo en .Net o C#, que son los lenguajes en los que estoy empezando.

Inicialmente estaba pensando utilizar un For y poder cargar los valores en un Label o un Datagridview.

Agradezco siempre su colaboración, son de mucha ayuda!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andrés
Val: 48
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Pseudo Aleatorio - Arimética Modular

Publicado por Andrés (27 intervenciones) el 10/08/2018 21:34:12
Amigos esto es lo tengo en mente pero no se como cargar todos los valores:

1

2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar