multiply ( b%)%2) a # ( ( b%)%2) s # (. subtract%%2)] ( - ( int ( nth ( str ( reduce ( fn [ z k] ( a z ( m ( d 1 ( ( b 16) k)) ( s ( s ( s ( d 4 ( a 1 ( m 8 k))) ( d 2 ( a 4 ( m 8 k)))) ( d 1 ( a 5 ( m 8 k)))) ( d 1 ( a 6 ( m 8 k))))))) ( bigdec 0) ( map bigdec ( range ( inc n))))) ( + n 2))) 48))) 48))) Donc, comme vous pouvez probablement le constater, je n'ai aucune idée de ce que je fais. Cela a fini par être plus comique que tout. Je Google'd « pi à n chiffres », et a fini sur la page de Wikipédia pour la Formule BBP. Sachant à peine assez de calcul (? Pi-10000 décimales-livre-vincent hedan-mentalisme-magie-boutique-artfisik-memoire-impossible. ) Pour lire la formule, j'ai réussi à la traduire en Clojure. La traduction elle-même n'était pas si difficile. La difficulté provenait de la précision de traitement jusqu'à n chiffres, puisque la formule l'exige (Math/pow 16 precision); qui devient énorme très vite. Je devais utiliser BigDecimal partout pour que cela fonctionne, ce qui est vraiment gonflé les choses. Ungolfed: ( defn nth-pi-digit [ n]; Create some aliases to make it more compact ( let [ b bigdec d # ( ( b%)%2 ( + n 4) BigDecimal/ROUND_HALF_UP) m # (.
Vous pouvez modifier vos choix à tout moment en accédant aux Préférences pour les publicités sur Amazon, comme décrit dans l'Avis sur les cookies. Pour en savoir plus sur comment et à quelles fins Amazon utilise les informations personnelles (tel que l'historique des commandes de la boutique Amazon), consultez notre Politique de confidentialité.
( for [ t [ 0 1 2 3 10 100 599 760 1000 10000]]
[ t ( nth-pi-digit t)])
([ 0 1] [ 1 4] [ 2 1] [ 3 5] [ 10 8] [ 100 8] [ 599 2] [ 760 4] [ 1000 3] [ 10000 5])
(defmacro q[& a] `(with-precision ~@a))(defn h[n](nth(str(reduce +(map #(let[p(+(* n 2)1)a(q p(/ 1M( 16M%)))b(q p(/ 4M(+(* 8%)1)))c(q p(/ 2M(+(* 8%)4)))d(q p(/ 1M(+(* 8%)5)))e(q p(/ 1M(+(* 8%)6)))](* a(-(-(- b c)d)e)))(range(+ n 9)))))(+ n 2)))
Calculez le nombre pi en utilisant cette formule. Je dois redéfinir la macro with-precision car elle est utilisée trop souvent. Vous pouvez voir la sortie ici: Les
prises 1000 et 10000 dépassent la limite de temps utilisée par idéone, les haussements d'épaules
Cette implémentation est basée sur l' algorithme de Chudnovsky, l'un des algorithmes les plus rapides pour estimer pi. Pi 10000 décimales 2. Pour chaque itération, environ 14 chiffres sont estimés (regardez ici pour plus de détails). f=lambda n, k=6, m=1, l=13591409, x=1, i=0:not i and(exec('global d;import decimal as d;tcontext()'%(n+7))or str(426880*cimal(10005)()/f(n//14+1, k, m, l, x, 1))[n+2])or i André Malraux
Collège
Mazan
Ce site a reçu 706 157 visites, dont 335 aujourd'hui. Moyenne: 146 visites par jour
Maximum: 993 visites
(2 septembre 2021)
dimanche 4 décembre 2011
Cliquer ICI
Pour visualiser les millionièmes premières décimales de PI, télécharger le fichier joint. Pi 10000 décimales meaning. pi
Un message, un commentaire? Collège André Malraux
– 35 chemin du stade - 84380 Mazan
– Responsable de publication: Mme Lenormand
Dernière mise à jour:
mercredi 1er septembre 2021
– Tous droits réservés © 2008-2022, Académie d'Aix-Marseille