Exploration des décimales de Π avec Python
Avec le module Sympy, on peut obtenir facilement 1 million ou 10 millions de décimales de Π (le temps de calcul est respectivement 9 secondes et 159 secondes)
Le calcul est basé sur l'algorithme de Chudnovsky
from sympy.mpmath import pi, mp
#nb de decimales
mp.dps=10**6+1
#pi en chaine de caracteres
b=str(pi)
#ecriture dans un fichier
dec = open("dec6.txt","w")
dec.write(b)
dec.close()
On obtient la séquence 314159 à la 176 451e décimale
On obtient la séquence 1234567 à la 9 470 344e décimale
On obtient la séquence 01100111 à la 463 987e décimale
Plus loin, on trouve la séquence 0000000100 à la 3 794 572e décimale
La séquence la plus étonnante : 1111100000 à la 6 926 656e place.
On trouve 2 séquences de 7 777 777
Huit apparitions…
Une séquence de 24 chiffres impairs consécutifs à la 2 493 199e décimale
159759359717751539993711
une autre séquence étonnante 0000050500 …
En téléchargeant un des fichiers proposés plus haut et en l'ouvrant avec un éditeur de texte, vous pouvez faire des recherches (en général dans Édition chercher).
En utilisant les expressions régulières , on peut faire des recherches sophistiquées.
Par exemple, on peut chercher toutes les chaînes formées d'au moins 8 caractères dans {0;1}.
#module pour les exp reg
import re
#chercher une chaine d au moins huit 0 et 1
#expression reguliere
motif=re.compile('[01]{8,}')
dec = open("pi07.txt","r")
#lecture du ficier
b=dec.read()
resu=motif.findall(b)
print resu
dec.close()fait le 18 et 19 février 2009