Ces fractions sont des réduites de la fraction continue simple (avec des 1 aux numérateurs) de pi: 3 + 1/(7+1/(15+...)). Sous forme simplifiée la fc simple de pi s'écrit [3,7,15,1,292,1,1,1,2,1,3,1,...] Elle est évidemment infinie parce que pi est irrrationnel. A partir de ces quotients on peut calculer des fractions appelées réduites qui vont approximer de mieux en mieux pi.
J'ai pas regardé le détail de ton programme mais je suppose que tu calcules ces quotients 3,7,.etc.. et que tu t'en sers pour calculer les réduites.
q y / x
---------------
0 / 1
1 / 0
3 3 / 1
7 22 / 7
15 333 / 106
1 355 / 113 *
292 103993 / 33102
1 104348 / 33215 *
1 208341 / 66317
1 312689 / 99532
2 833719 / 265381
1 1146408 / 364913 *
3 4272943 / 1360120
1 5419351 / 1725033 *
...etc...
Pour calculer ces réduites on fait:
avec les valeurs initiales de y et x des deux premieres lignes. Évidemment il faut déjà connaitre les quotients q, c'est-à-dire la fc de simple de pi. (Ces formules sont presque les mêmes que celles qui calculent les coefficients de Bézout dans l'algo d'Euclide étendu, au signe près: on change les "-" pour des "+").
On peut aussi interpoler entre deux réduites pour possiblement trouver une autre fraction qui sera une meilleure approximation de pi que la premiere réduite. Par exemple, entre 355/113 et 103993 / 33102 il y a une centaine d'autres fractions comme ca. On calcule chacune en prenant le quotient suivant, celui de 103993 / 33102, qui est 292 ici, et on le divise par 2: 292/2 = 146 et on s'en sert comme le quotient q pour calculer la fraction interpolee qui va suivre 355/113:
avec q = 146 y/x = 52163 / 16604
avec q = 147 y/x = 52518 / 16717
etc... jusqu'à q=291 mais il faut tester chacune pour voir si elle est une meilleure approximation que 355/113 car ce n'est pas garanti (contrairement aux réduites elles-mêmes).