Linear Congruential Generator

Vedi la discussione

Osserva

  1. i parametri da tastiera: a, c, m, SEME, NUM
  2. per ottenere un nuovo numero: x1, x2, x3
  3. stampa tutto in tabella
c = int(input("c? "))
m = int(input("m? "))
 
print("a =", a, "c =", c, "m =", m)
 
SEME = int(input("Seme?   "))
NUM  = int(input("Quanti? "))
 
x3 = SEME
for i in range(NUM):
    x1 = a*x3
    x2 = x1+c
    x3 = x2%m

    print("%10i %10i %10i %10i" %(i, x1, x2, x3))

L’elaborazione di x può essere riassunta in un’unica espressione

...
x = SEME
for i in range(NUM):
    x = (a*x+c)%m
    print(x, end=" ")