Misez P'tit, Optimisez n°14 - une approximation de PI

Ici, on fait dans le petit, le LCD qui déchire sa race, on y cause même calculatrices quand on est en manque !

Modérateur : Politburo

Avatar du membre
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7141
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Misez P'tit, Optimisez n°14 - une approximation de PI

Message par gege »

Bonjour,
Un certain Ramanujan a trouvé l'approximation suivante de pi, exacte à 20 décimales :

Code : Tout sélectionner

PI =approx= -2/sqrt(210)*log((sqrt(2)-1)^2*(2-sqrt(3))*(sqrt(7)-sqrt(6))^2*(8-3*sqrt(7))*(sqrt(10)-3)^2*(sqrt(15)-sqrt(14))*(4-sqrt(15))^2*(6-sqrt(35))/4)
Comment feriez-vous le calcul sur votre poquette favori ?
G.E.

EDIT : j'en vois qui sortent leur machine !! :D
Modifié en dernier par gege le 24 janv. 2012 14:56, modifié 2 fois.
Avatar du membre
Hobiecat
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3626
Enregistré le : 06 sept. 2011 14:57
Localisation : Normandie

Re: Optimiser - une approximation de PI

Message par Hobiecat »

gege a écrit :EDIT : j'en vois qui sortent leur machine !! :D
Déjà je prendrais une HP, y'aura moins de parenthèses ! :mrgreen:

PS1 : ça tombe bien, je voulais lancer un misez p'tit ! :wink:
PS2 : c'est le misez p'tit 14 par ordre d'entrée en scène.
Modifié en dernier par Hobiecat le 24 janv. 2012 13:12, modifié 2 fois.
cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2142
Enregistré le : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Optimiser - une approximation de PI

Message par cgh »

Oh la la la !!! Un truc comme cela après déjeuner, c'est duuuur !!!

En fait, je triche :pirat:. Je ne possède que des machines qui ont une touche ou une fonction PI ! :mrgreen:

Je :arrow:
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque
Avatar du membre
Hobiecat
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3626
Enregistré le : 06 sept. 2011 14:57
Localisation : Normandie

Re: Optimiser - une approximation de PI

Message par Hobiecat »

cgh a écrit :En fait, je triche :pirat:. Je ne possède que des machines qui ont une touche ou une fonction PI ! :mrgreen:
Difficile d'optimiser plus, je pense ! :lol:

Sinon, j'ai essayé de calculer bêtement, mais ça ne sort pas Pi... y'aurait pas une erreur dans la formule ??

Sur cette page, il y a une autre formule qui ressemble :
Image
mais le résultat n'est pas mieux...

EDIT : la formule de gege est bonne si on applique log = LN , je ne suis pas réveillé !! :mrgreen: Par contre, celle copiée ci-dessus doit manquer un morceau...
Modifié en dernier par Hobiecat le 24 janv. 2012 15:18, modifié 3 fois.
Avatar du membre
jvernet
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7958
Enregistré le : 24 mai 2002 09:57
Localisation : France 69
Contact :

Re: Optimiser - une approximation de PI

Message par jvernet »

Code : Tout sélectionner

long a=10000,b,c=8400,d,e,f[8401],g;
main(){for(;b-c;)f[b++]=a/5;
for(;d=0,g=c*2;c-=14,printf("%.4ld",e+d/a),e=d%a)
for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);} 
2400 décimales de PI juste (il parait).

Source:http://www.yann-ollivier.org/pi/pi.php
"l'ordinateur et l'homme sont les deux opposés les plus intégraux qui existent. L'homme est lent, peu rigoureux et très intuitif. L'ordinateur est super rapide, très rigoureux et complètement con."
Avatar du membre
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7141
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Re: Optimiser - une approximation de PI

Message par gege »

Hobiecat a écrit :Sinon, j'ai essayé de calculer bêtement, mais ça ne sort pas Pi... y'aurait pas une erreur dans la formule ??
C'est un logarithme népérien...
Pas mal ta référence, je vais lire !
A+
G.E.
Avatar du membre
Hobiecat
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3626
Enregistré le : 06 sept. 2011 14:57
Localisation : Normandie

Re: Optimiser - une approximation de PI

Message par Hobiecat »

gege a écrit :Pas mal ta référence, je vais lire !
Oui, je suis tombé dessus par hasard en cherchant la formule et je trouve aussi que ce site est pas mal : en tout cas, c'est une mine sur Pi !
cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2142
Enregistré le : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Optimiser - une approximation de PI

Message par cgh »

cgh a écrit :En fait, je triche :pirat:. Je ne possède que des machines qui ont une touche ou une fonction PI ! :mrgreen:
Aaaaargh !!!! 8O 8O Je viens de decouvrir que mon Canon X-07 recu hier ne possedait pas de fonction PI !!! 8O 8O
Mais je ne suis pas sur qu'avec la formule donnee par gege, vu les approximations de la fonction SQRT, le Canon calcule PI correctement :roll: :wink:
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque
Avatar du membre
pir2
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4642
Enregistré le : 31 oct. 2006 15:08
Localisation : 67310 Westhoffen
Contact :

Re: Optimiser - une approximation de PI

Message par pir2 »

cgh a écrit :
cgh a écrit :En fait, je triche :pirat:. Je ne possède que des machines qui ont une touche ou une fonction PI ! :mrgreen:
Aaaaargh !!!! 8O 8O Je viens de decouvrir que mon Canon X-07 recu hier ne possedait pas de fonction PI !!! 8O 8O
Mais je ne suis pas sur qu'avec la formule donnee par gege, vu les approximations de la fonction SQRT, le Canon calcule PI correctement :roll: :wink:

Code : Tout sélectionner

? PI
?
Image
Image
Avatar du membre
Hobiecat
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3626
Enregistré le : 06 sept. 2011 14:57
Localisation : Normandie

Re: Optimiser - une approximation de PI

Message par Hobiecat »

cgh a écrit :
cgh a écrit :En fait, je triche :pirat:. Je ne possède que des machines qui ont une touche ou une fonction PI ! :mrgreen:
Aaaaargh !!!! 8O 8O Je viens de decouvrir que mon Canon X-07 recu hier ne possedait pas de fonction PI !!! 8O 8O
Mais je ne suis pas sur qu'avec la formule donnee par gege, vu les approximations de la fonction SQRT, le Canon calcule PI correctement :roll: :wink:
Le X-07 doit bien réussir à sortir les 10 premières décimales quand même ?

Sinon, je n'ai pas encore trouvé comment sortir les 20 décimales... mais la nuit porte conseil ! :wink:
cgh
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2142
Enregistré le : 30 août 2011 12:23
Localisation : Vous êtes ici -> .

Re: Optimiser - une approximation de PI

Message par cgh »

pir2 a écrit :
cgh a écrit :
cgh a écrit :En fait, je triche :pirat:. Je ne possède que des machines qui ont une touche ou une fonction PI ! :mrgreen:
Aaaaargh !!!! 8O 8O Je viens de decouvrir que mon Canon X-07 recu hier ne possedait pas de fonction PI !!! 8O 8O
Mais je ne suis pas sur qu'avec la formule donnee par gege, vu les approximations de la fonction SQRT, le Canon calcule PI correctement :roll: :wink:

Code : Tout sélectionner

? PI
?
0
Ce n'est pas du SHARP ou du CASIO. C'est du Kro$oft ! :?
Il y a ceux qui voient les choses telles qu'elles sont et se demandent pourquoi, et il y a ceux qui imaginent les choses telles qu'elles pourraient être et se disent... pourquoi pas? - George Bernard Shaw
J'adore parler de rien, c'est le seul domaine où j'ai de vagues connaissances ! - Oscar Wilde
Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas que les choses sont difficiles. - Sénèque
Avatar du membre
pir2
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4642
Enregistré le : 31 oct. 2006 15:08
Localisation : 67310 Westhoffen
Contact :

Re: Misez P'tit, Optimisez n°14 - une approximation de PI

Message par pir2 »

bontempi
Image
Image
Avatar du membre
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7141
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Re: Optimiser - une approximation de PI

Message par gege »

Hobiecat a écrit :Sinon, je n'ai pas encore trouvé comment sortir les 20 décimales... mais la nuit porte conseil ! :wink:
J'avais pensé surtout à taper la formule le plus économiquement possible, mais tu étends l'idée habilement, première idée : utiliser un PCE-500 ou autre poquette double précision, sinon il va falloir programmer et là... :?: :!:
A+
G.E.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3404
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: Misez P'tit, Optimisez n°14 - une approximation de PI

Message par C.Ret »

Bon, je suis un peu paresseux:

En général pour avoir les décimales de PI, j'utilise mon SHARP PC-1211 de cette façon (le symbole PI est sur la touche flèche vers le haut):
[SHIF][UP]-3.1[ENTER] qui affiche 4.159265359EE-02

C'est plus précis que de directement utiliser PI qui ne dévoille que les 9 premières décimales PI [ENTER] affiche 3.14159265359EE-02

Pour avoir plus de décimales, je vais sur Internet.

Et si je devais faire calculer les décimales à un Pocket, je serais tenté d'utiliser les fractions continues :
Image

OU alors une formule du type :
Image

Tiens, cela doit donner un code bien propret en RPL
Calculatrices


PICAL - Jean-Christophe BENOIST
Télécharger
Programme pour HP-49 basé sur l'algorithme compte-goutte de Gosper. Très petit (256 octets), il fournit 1000 décimales en 10 minutes. On entre le nombre de décimales souhaité et on lance le programme.
[Source : http://www.pi314.net/fr/programmes.php]

Mais bon, en général, pour l'usage que j'ai de PI, PI = 3.14156 est laaargement suffisant.
Modifié en dernier par C.Ret le 22 janv. 2023 13:27, modifié 1 fois.
SHARP PC-1211 PC-1360 EL-5150 PC-E500 | Commodore C=128D | Texas Instruments Ti-57LCD Ti-74BASICalc Ti-92II Ti-58c Ti-95PROCalc Ti-30XPROMathPrint | Hewlett-Packard HP-28S HP-41C HP-15C HP-Prime HP-71B | CASIO fx-602p | NUMWORKS | Graphoplex Rietz Neperlog | PockEmul | Sommaire des M.P.O. | Ma...dov'il sapone.
leduigou
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 109
Enregistré le : 28 mai 2011 14:46
Localisation : Paris

Re: Misez P'tit, Optimisez n°14 - une approximation de PI

Message par leduigou »

Le mieux que je puisse faire à la maison en Fortran77 :
pi=
3.14159265358979323846264338327950288419716939937510582097494459
2307816406286208998628034825342117067982148086513282306647093844
6095505822317253594081284811174502841027019385211055596446229489
5493038196442881097566593344612847564823378678316527120190914564
8566923460348610454326648213393607260249141273724587006606315588
1748815209209628292540917153643678925903600113305305488204665213
8414695194151160943305727036575959195309218611738193261179310511
8548074462379962749567351885752724891227938183011949129833673362
4406566430860213949463952247371907021798609437027705392171762931
7675238467481846766940513200056812714526356082778577134275778960
9173637178721468440901224953430146549585371050792279689258923542
0199561121290219608640344181598136297747713099605187072113499999
9837297804995105973173281609631859502445945534690830264252230825
3344685035261931188171010003137838752886587533208381420617177669
1473035982534904287554687311595628638823537875937519577818577805
3217122680661300192787661119590921642019893809525720106548586327
8865936153381827968230301952035301852968995773622599413891249721
7752834791315155748572424541506959508295331168617278558890750983
8175463746493931925506040092770167113900984882401285836160356370
7660104710181942955596198946767837449448255379774726847104047534
6462080466842590694912933136770289891521047521620569660240580381
5019351125338243003558764024749647326391419927260426992279678235
4781636009341721641219924586315030286182974555706749838505494588
5869269956909272107975093029553211653449872027559602364806654991
1988183479775356636980742654252786255181841757467289097777279380
0081647060016145249192173217214772350141441973568548161361157352
5521334757418494684385233239073941433345477624168625189835694855
6209921922218427255025425688767179049460165346680498862723279178
6085784383827967976681454100953883786360950680064225125205117392
9848960841284886269456042419652850222106611863067442786220391949
4504712371378696095636437191728746776465757396241389086583264599
5813390478027590099465764078951269468398352595709825822620522489
4077267194782684826014769909026401363944374553050682034962524517
4939965143142980919065925093722169646151570985838741059788595977
2975498930161753928468138268683868942774155991855925245953959431
0499725246808459872736446958486538367362226260991246080512438843
9045124413654976278079771569143599770012961608944169486855584840
6353422072225828488648158456028506016842739452267467678895252138
4
total elapsed time= 0.47592700 user= 0.47192800 system= 3.99899995E-03

Mais c'est de la triche, il n'y a pas de calculatrice en Fortran77 :mrgreen:
Cordialement
Frédéric
Répondre

Retourner vers « Tous les Pockets »