Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def nb_premier(max):
- list = []
- for k in range(2,max):
- div=False
- for l in range(2,k):
- if k%l == 0:
- div=True
- if div == False:
- list.append(k)
- return list
- ITERATIONS=10
- def is_correct(PRNG):
- nb_prem = nb_premier(4)
- for seed in nb_prem:
- print("seed:",seed)
- prng = PRNG(seed, 1000)
- result=[]
- for i in range(ITERATIONS):
- result.append(prng.next_int())
- print(result)
- coef_arit_prev = 0
- coef_arit_same = 0
- coef_geo_prev = 0
- coef_geo_same = 0
- for i in range(ITERATIONS):
- print("test de la valeur",result[i])
- for j in range(1,ITERATIONS-i-1):
- if result[i] == result[j]:
- k = 0
- while result[i+k] == result[j+k] and j+k < len(result)-1:
- k+=1
- print("Pattern identique sur",k,"itérations")
- coef_arit = result[(i+1)%ITERATIONS]-result[i]
- if coef_arit == coef_arit_prev:
- coef_arit_same += 1
- else:
- print("Coefficient arithmétique identique sur",coef_arit_same,"itération")
- coef_arit_same=0
- coef_arit_prev = coef_arit
- coef_geo = result[(i+1)%ITERATIONS]/result[i]
- if coef_geo == coef_geo_prev:
- coef_geo_same += 1
- else:
- print("Coefficient géométrique identique sur", coef_geo_same, "itération")
- coef_geo_same = 0
- coef_geo_prev = coef_geo
- print(is_correct(PRNG))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement