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

Contenu supprimé Contenu ajouté
m Page créée avec « Catégorie:Python Catégorie:Ruby Catégorie:Mathématiques [[Catégorie:Mathématiques avec Python et Ruby (livre)|Résolution de problèmes en Python|Triplets p... »
 
Aucun résumé des modifications
Ligne 7 :
 
{{Cadre|<code>
Trouver tous les [[w:Triplet pythagoricien|triplets pythagoriciens]] (x,y,z) tels que <math>x+y+z=1000</math>; autrement dit, on demande les triangles rectangles de [[w:Périmètre|périmètre]] 1000 dont les côtés sont entiers.
</code>}}
 
En considérant ''x'', ''y'' et ''z'' comme classés dans l'ordre croissant, on va faire une boucle sur ''y'' (le plus grand des côtés de l'angle droit), et à l'intérieur de celle-ci, une autre boucle sur ''x''. Enfin on calcule l'[[w:Hypoténuse|hypoténuse]] ''z'', puis le périmètre du triangle. Et si celui-ci vaut 1000, on affiche le triplet:
 
<source lang="python">
from math import hypot
 
for y in range(1000):
for x in range(y):
z=hypot(x,y)
if x+y+z==1000:
print(x,y,z)
</source>
 
 
Le script nous apprend qu'il n'y a qu'un seul triplet pythagoricien de somme 1000.