Le mot-clé ALKINDI a servi à permuter les colonnes.
A L K I N D I
1 2 3 4 5 6 7 1 6 5 3 7 2 4
=================== ===================
3 2 7 8 2 6 6 3 6 2 7 6 2 8
6 5 7 5 2 7 9 6 7 2 7 9 5 5
0 1 9 9 5 2 5 0 2 5 9 5 1 9
6 2 4 1 0 3 3 6 3 0 4 3 2 1
1 1 4 8 2 0 4 1 0 2 4 4 1 8
0 0 8 6 2 9 9 0 9 2 8 9 0 6
1 6 6 3 6 9 6 1 9 6 6 6 6 3
2 2 4 0 8 7 3 2 7 8 4 3 2 0
5 6 4 7 4 7 1 5 7 4 4 1 6 7
3 5 3 7 4 6 1 3 6 4 3 1 5 7
1 1 9 4 3 4 8 1 4 3 9 8 1 4
7 6 8 5 0 1 4 7 1 0 8 4 6 5
4 5 1 3 8 0 1 4 0 8 1 1 5 3
0 4 6 2 6 9 8 0 9 6 6 8 4 2
8 6 9 4 7 3 9 8 3 7 9 9 6 4
7 1 6 1 3 6 2 7 6 3 6 2 1 1
2 1 1 3 0 3 7 2 3 0 1 7 1 3
4 4 1 8 3 8 9 4 8 3 1 9 4 8
3 7 8 6 3 5 7 3 5 3 8 7 7 6
8 0 4 7 0 0 0 8 0 0 4 0 0 7
5 2 2 5 1 7 4 5 7 1 2 4 2 5
7 6 6 4 7 9 2 7 9 7 6 2 6 4
9 8 0 9 2 1 0 9 1 2 0 0 8 9
4 0 6 7 9 7 6 4 7 9 6 6 0 7
2 2 9 3 2 1 1 2 1 2 9 1 2 3
0 0 5 3 0 9 4 0 9 0 5 4 0 3
2 1 7 6 1 5 7 2 5 1 7 7 1 6
6 3 8 6 1 4 1 6 4 1 8 1 3 6
7 3 2 2 2 5 7 7 5 2 2 7 3 2
3 1 0 9 8 9 1 3 9 8 0 1 1 9
1 7 9 3 2 4 1 1 4 2 9 1 7 3
6 4 0 7 0 6 8 6 6 0 0 8 4 7
6 3 2 6 2 3
En relevant en ligne, on obtient de nombre :
x = 3627628672795502595196304321102441809289061966663278432057441673643157143981\
47108465408115309668428379964763621123017134831948353877680040075712425797626491\
20089479660721291230905403251771664181367522732398011914291736600847623
Utilisons le module de théorie des nombres de la bibliothèque Python Sympy.
from sympy.ntheory.factor_ import factorint
La fonction factorint
renvoie un dict {facteur:exposant} de la décomposition de x.
f = factorint(x)
print(f)
Tous les exposants sont égaux à 1.
On veut la liste des facteurs, dans l'ordre (la méthode keys()
ne donne pas toujours les clés dans l'ordre)
factors = list(f.keys())
sorted(factors)
print(factors)
from sympy.ntheory.generate import primepi
La fonction primepi
donne le nombre de premiers inférieurs ou égaux à son argument.
primepi(2), primepi(3), primepi(11)
Liste des rangs des facteurs :
ranks = [primepi(p) for p in factors]
print(ranks)
Différence première de la liste précédente :
diff1 = [ranks[i+1] - ranks[i] for i in range(len(ranks)-1)]
print(diff1)
Conversion en caractères des codes ASCII de la liste précédente :
car = [chr(x) for x in diff1]
print(''.join(car))
Le 25/06/2021 - Contact : Rossignol@bribes.org