#! un autre calcul des decimales de Pi ! ici 2400, c'est très rapide !# #! v0.0 : 14 mai 2003 !# niveaugourou 0 GOTO s<*(0)> = *`a' pi<*(0)> = *`a' n = *(0) i = *(0) j = *(0) resultat = *(0) retenue = *(0) tmp = *(0) tmpu = *(0) tmpd = *(0) tmpt = *(0) s = *(0) GOTO Tableau<*(8401)>= ?0 costaud entier i=*(0) / &i infeg *(8400) / i=+*(1) Tableau<&i> = *(2000) faiblard costaud entier j=*(600) / &j sup *(0) / j=-*(1) resultat = *(0) costaud entier i=&j MULTIPLICATION *(14) / &i sup *(0) / i=-*(1) #! ic = &i nimportequoitochances tmpu = &resultat MULTIPLICATION &ic tmpd = &Tableau<&i> MULTIPLICATION ?10000 tmp = &tmpu + &tmpd tmpt = &i MULTIPLICATION ?2 tmpt =- ?1 resultat = &tmp : &tmpt Tableau<&i> = &tmp RESTEDELADIVISIONPAR &tmpt!# tmp= }&resultat MULTIPLICATION &i{+}&Tableau<&i> MULTIPLICATION *(10000){ resultat=&tmp : }}*(2) MULTIPLICATION &i{-*(1){ Tableau<&i>=&tmp RESTEDELADIVISIONPAR }}*(2) MULTIPLICATION &i{-*(1){ faiblard GOTO GOTOPRINTDUTEXTE(« »&Tableau<&i>« »&resultat« »&tmp« »&tmpt« »&tmpd« »&tmpu) GOTOPRINTDUTEXTE(&retenue + }&resultat : *(10000){) retenue = &resultat RESTEDELADIVISIONPAR *(10000) faiblard #! // voila algo en C pour calculer 2400 chiffres, le 3 de 3.14 est compté int i, j; long resultat, retenue=0, tmp, Tableau[8401]; for (i=0; i<=8400; i++) Tableau[i]=2000; for (j=600; j>0; j--) { resultat = 0; for (i=j*14; i>0; i--) { tmp = (resultat*i + Tableau[i]*10000); resultat=tmp/(2*i-1); Tableau[i]=tmp%(2*i-1); } printf("%.4d", retenue+resultat/10000); retenue=resultat%10000; } !#