« Mathématiques avec Python et Ruby/Fractions en Ruby » : différence entre les versions

Contenu supprimé Contenu ajouté
DannyS712 (discussion | contributions)
m <source> -> <syntaxhighlight> (phab:T237267)
Aucun résumé des modifications
Ligne 3 :
[[Fichier:Cake_quarters.svg|right]]
 
"Dieu fit le nombre entier, le reste est l'oeuvrel’œuvre de l'Homme", disait [[w:Leopold Kronecker|Leopold Kronecker]]. Le début du reste ce fut incontestablement les fractions, définies comme quotients d'entiers, et pratiquées bien avant les nombres décimaux.
 
=Obtention d'une fraction=
Ligne 99 :
==Soustraction==
 
La différence de deux fractions est une fraction :
 
<syntaxhighlight lang="ruby">
Ligne 110 :
==Multiplication==
 
Le produit de deux fractions est une fraction :
 
<syntaxhighlight lang="ruby">
Ligne 121 :
==Division==
 
Le quotient de deux fractions (à condition que la deuxième ne soit pas nulle) est une fraction :
 
<syntaxhighlight lang="ruby">
Ligne 129 :
</syntaxhighlight>
 
Et même le reste euclidien est défini entre fractions, et le résultat est encore une fraction :
 
<syntaxhighlight lang="ruby">
Ligne 140 :
===Exemple===
 
On voudrait savoir quel est le rapport des longueurs des tuyaux d'orgue :
# Entre un [[w:Gros Nasard|gros Nasard]] et un [[w:Nasard|Nasard]];
# Entre un [[w:Gros Nasard|gros Nasard]] et une [[w:Grosse Tierce|grosse Tierce]].
 
Ces rapports sont affichés par ''Ruby'' sous forme de fractions, même le premier d'entre eux qui est entier (ce qui ne sautait pas aux yeux !) :
#Entre un [[w:Gros Nasard|gros Nasard]] et un [[w:Nasard|Nasard]];
#Entre un [[w:Gros Nasard|gros Nasard]] et une [[w:Grosse Tierce|grosse Tierce]].
 
Ces rapports sont affichés par ''Ruby'' sous forme de fractions, même le premier d'entre eux qui est entier (ce qui ne sautait pas aux yeux !):
 
<syntaxhighlight lang="ruby">
Ligne 157 ⟶ 156 :
==Puissance==
 
Une puissance entière (même négative) d'une fraction) est encore une fraction :
 
<syntaxhighlight lang="ruby">
Ligne 165 ⟶ 164 :
</syntaxhighlight>
 
Mais si l'exposant est décimal, même si le résultat est une fraction, ''Ruby'' le considère comme un réel :
 
<syntaxhighlight lang="ruby">
Ligne 178 ⟶ 177 :
==Réduite de Farey==
 
Pour calculer la ''médiane'' (ou réduite) de Farey de deux fractions ''a'' et ''b'', on définit une fonction ''Ruby'' de deux variables, qui s'appelle ''Farey'' :
 
<syntaxhighlight lang="ruby">
Ligne 195 ⟶ 194 :
==Fractions égyptiennes==
 
Pour écrire une fraction à l'égyptienne (comme somme de fractions de numérateur 1), on applique l'algorithme de [[w:Fibonacci|Fibonacci]] :
 
[[Fichier:Oudjat.SVG|200px|right]]
Ligne 219 ⟶ 218 :
</syntaxhighlight>
 
On peut résumer ce script ''Ruby'' aux étapes suivantes :
 
#On commence par extraire la partie entière de ''f'', pour qu'il reste une fraction inférieure à 1 ;
#On soustrait à ''f'' (fraction restante) le plus grand inverse d'entier possible...
#On s'arrête quand le reste est lui-même un inverse d'entier (autrement dit, on continue tant que son numérateur est plus grand que 1).