Fractions les plus proches d'un réel APP javascript et gnuplot

Publié le 26 mars 2021 par Serdj

Fractions les plus proches d'un réel : application interactive

L'application suivante permet de calculer les fractions entières les plus proches d'un réél donné de manière interactive :
Entrez un nombre décimal positif non entier (par exemple 3.141592653)
é
êéééçé
Intéressant, non ? Ce programme utilise, de manière interne, un algorithme de calcul de fractions continues. Il donne les meilleures approximations possibles du nombre décimal que vous avez entré, tant que les entiers qui figurent dans la fraction résultante a/b restent inférieurs à dix milliards. Essayez avec 1.252525252525, c'est amusant...

Avec gnuplot

Juste pour le fun, voici un petit groupe de fonctions qui permettent simplement de calculer la ou les fractions entières les plus proches d'un réél donné avec gnuplot, un logiciel que j'adore, de manière interactive :
pfrac(a,b)="".a."/".b
cfrac(r) = cfraci(r,3)
cfraci(r,i)=cfr(r,i,floor(r),0,1,1,0)
cfr(r,i,a,h2,k2,h1,k1)=(i<=0)?pfrac((a*h1+h2),(a*k1+k2)):cfr(1./(r-a),i-1,floor(1./(r-a)),h1,k1,a*h1+h2,a*k1+k2)
print cfrac(pi)
355/113

La fonction cfrac(r) donne la fraction entière la plus simple qui approxime le réél r. Le résultat de la fonction est la chaîne de caractères "a/b" où a/b est la fractions d'entiers la plus proche de r avec une précision correcte (3 itérations de l'algorithme).
La fonction cfraci(r,i) permet de préciser le nombre d'itérations de l'algorithme, donc la précision requise.
La fonction pfrac(a,b) rend la chaîne de caractères "a/b"
Exemples :
print cfraci(pi,0)
3/1
print cfraci(pi,1)
22/7
print cfraci(pi,2)
333/106
print cfraci(pi,3)
355/113
print cfraci(pi,4)
103993/33102


Voila, c'est tout ! Retour aux pages "maths"
ou bien retour à Mes pages "informatique"

Tous mes livres : Cliquez sur le titre qui vous intéresse


Home Mes livres Mes tableaux Plan du site

NOUVEAU ! Vous aimez ce site ? Aidez-moi !
Partagez / votez pour cette page :