Journal d'un Terrien

Web log de Serge Boisse

On line depuis 1992 !

Publicité

Si cette page vous a plu, Copiez son adresse et partagez-la !
http://sboisse.free.fr/technique/info/fractions-continues-gnuplot.php

fractions-continues-gnuplot
Metadata
Serge Boisse
Le 31/03/2023 à 18:03
web/MOC
oui
oui

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éel donné de manière interactive, ou si vous voulez de convertir un nombre décimal en fraction :

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"

Publicité
Commentaires

Commentaires (1) :

Page : [1] 

fractal
Le 08/11/2021 à 19h00
Très intéressant et utile. Merci !


Ajouter un commentaire (pas besoin de s'enregistrer)

Pseudo :
Message :


image de protection
En cliquant sur le bouton "Envoyer" vous acceptez les conditions suivantes : Ne pas poster de message injurieux, obscène ou contraire à la loi, ni de liens vers de tels sites. Respecter la "netiquette", ne pas usurper le pseudo d'une autre personne, respecter les posts faits par les autres. L'auteur du site se réserve le droit de supprimer un ou plusieurs posts à tout moment. Merci !
Ah oui : le bbcode et le html genre <br>, <a href=...>, <b>b etc. ne fonctionnent pas dans les commentaires. C'est voulu.
< Retour en haut de la page