Académique Documents
Professionnel Documents
Culture Documents
Objectif du TP
- Nous allons programmer des fonctions en Python.
- Vous devrez écrire les fonctions dans l’éditeur de texte. Attachez du soin à la présentation des différentes
parties. Pour cela, on favorisera l’écriture de commentaires précédé de #.
- L’exécution des fonctions sur des arguments donnés se fera dans la console.
De plus, on peut ajouter la commande assert en début de fonction qui vérifie alors des conditions d’exécution
de la fonction.
Dans la fonction heron ajouter la ligne suivante après la description de la fonction :
a s s e r t a >= 0 and b >= 0 and c >= 0 , ’ Les d i s t a n c e s d o i v e n t ê t r e p o s i t i v e s ’
Puis tester à nouveau la fonction dans la console. Que renvoie python pour les valeurs négatives ?
Exercice 1 : Pour heron(1,1,3) le programme renvoie à nouveau une valeur surprenante.
Corriger le programme heron en ajoutant un nouveau assert afin de réaliser le calcul uniquement lorsque
les arguments sont cohérents.
Indication : Les cotés d’un triangle doivent vérifier l’inégalité triangulaire.
Consigne : Dans les exercices qui suivent, on soignera particulière la description de la fonction ainsi que
la vérification de la validité des paramètres.
Exercice 2 : Ecrire une fonction module qui prend en argument quatre flotants xA, yA, xB et yB et renvoie
la distance séparant les points du plan cartésien A(xA, yA) et B(xB, yB).
Remarque : Le principal intérêt d’une fonction est, qu’une fois compilée, elle peut être utiliser dans la
création de fonction composée plus complexe.
Consigne : On évitera les copier-coller pour préférer utiliser les fonctions précédentes.
Exercice 3 : Ecrire une fonction heron_cart qui prend en argument six flotants xA, yA, xB, yB, xC et
yC et revoie l’aire du triangle formé par les trois points A(xA, yA), B(xB, yB) et C(xC, yC).
Pour les deux fonctions ainsi compilées, comparer dans la console les valeurs de :
>>> heron ( 1 , 2 , 3 )
>>> bad heron ( 1 , 2 , 3 )
>>> type ( heron )
>>> type ( bad heron )
>>> heron ( 1 , 2 , 3)∗19
>>> bad heron ( 1 , 2 , 3)∗19
>>> type ( heron ( 1 , 2 , 3 ) )
>>> type ( bad heron ( 1 , 2 , 3 ) )