pakdoltogel.net
( 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. Pi 10000 décimales 1. 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. 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 Je récite les 1000 premières décimales de Pi (π) - YouTube Bonjour! Voici le défi décimales de pi! Résumé des épisodes précédents: décimales de pi
Le mois dernier, je m'étais lancé un défi mémoire: mémoriser PI
Aujourd'hui je vous propose donc la vidéo de ce défi. En temps réel, la restitution a pris près de 20 minutes, alors je l'ai mise en lecture accélérée. Tout au long du processus, j'explique comment je m'y suis pris. Je précise que n'importe qui peut en faire autant avec peu d'entraînement. Je n'ai aucun don particulier. Je récite les 1000 premières décimales de Pi (π) - YouTube. Le défi est maintenant terminé. Un autre viendra. J'ai quelques idées, mais j'attend avec grand intérêt si vous avez des propositions! edit 2021: j'ai bien entendu fait beaucoup d'autres défis depuis ce dernier, et c'est à chaque fois un plaisir de vous partager mes découvertes sur Je suis à la recherche d'autres défis, (pitié autre chose que des décimales de pi! ) pour rappel: toutes les techniques que j'utilise sont issues de mes livres: napoléon joue de la cornemuse dans un bus, boostez votre mémoire et une mémoire extraordinaire. La plupart de vos spectateurs se remémorerons l'agréable moment de ce nombre mystérieux utilisé en mathémathiques qu'est Pi! Quelques personnes connaissent les premières décimales mais vous, avec votre mémoire prodigieuse, vous êtes capable d'en connaitre les 10 000 premières décimales marquées dans ce livre. Le spectateur ouvre le livre à n'importe quelle page, vous donne le numéro de celle-ci et vous êtes capable de réciter les premiers chiffres de cette page. Vous pouvez demander une séquence de 5 chiffres n'importe où et vous êtes capable de réciter la suite des décimales jusqu'à en tourner une nouvelle page. Pour finir, vous demandez la date de naissance de votre spectateur et vous êtes capable de trouver exactement la page, la ligne et la position de cette séquence. Pi 1000 décimales. Aucun complice. Aucun preshow. Aucun peek. Aucune antisèche. in the string)% And get the digit at that location% Implicitly display the result
RealDigits[Pi, 10, 1, -#][[1, 1]]&
f=%
f@0
f@1
f@2
f@3
f@10
f@100
f@599
f@760
f@1000
f@10000
1
4
2
lambda d:`n(pi, 9^5)`[d+2]
Ma première réponse dans une langue de ce genre. n arrondit pi à 17775 chiffres. ⌊10^# Pi⌋~Mod~10&
lambda n: int ( 10 ^ n * pi)% 10
10([|<. @o. @^)>:
Prend un entier n et délivre en sortie la n ième chiffre de pi. Utilise l'indexation à base zéro. Pour obtenir le n ième chiffre Compute fois pi 10 n + 1, prenez la parole de cette valeur, puis modulo 10. Usage
L'entrée est un entier étendu. f =: 10([|<. @^)>:
(,. f"0) x: 0 1 2 3 10 100 599 760 1000
0 1
1 4
2 1
3 5
10 8
100 8
599 2
760 4
1000 3
timex 'r =: f 10000x'
1100. 73
r
Sur ma machine, il faut environ 18 minutes pour calculer le 10000 ème chiffre. 10([|<. 1 000 000 premières décimales de PI - Collège André Malraux Mazan. @^)>: Input: n
>: Increment n
10 The constant n
^ Compute 10^(n+1)
o. @ Multiply by pi
<. @ Floor it
[ Get 10
| Take the floor modulo 10 and return
( fn [ n] ( let [ b bigdec d # ( ( b%)%2 ( + n 4) BigDecimal/ROUND_HALF_UP) m # (.Pi 10000 Décimales 1
Pi 10000 Décimales En
Pi 1000 Décimales