Fonctions I. Définir une fonction Une fonction est un algorithme qui prend des arguments en entrée, effectue une séquence d'instructions et renvoie un résultat. Exemple. def TriangleRectangle(a,b,c): if a*a==b*b+c*c or b*b==a*a+c*c or c*c==a*a+b*b: return True else: return False Cette fonction reçoit comme arguments trois longueurs et indique si elles peuvent correspondre aux trois côtés d’un triangle rectangle. >>> TriangleRectangle( 2,5,12) False >>> TriangleRectangle(3,4,5) True >>> TriangleRectangle(4,12,100) False Remarques : On appelle argument d’une fonction une variable particulière, utilisée dans le corps de la fonction, et dont la valeur est donnée dans le programme principal au moment où la fonction est appelée. De manière plus générale, la syntaxe pour définir une fonction est la suivante : def NomDeLaFonction(argument1,argument2,...,argumentn): <instructions> On n'oubliera pas les : et l'indentation (retrait de texte) qui sont obligatoires en Python ! La définition d'une fonction - Commence par le mot-clé def, - Suivi du nom de la fonction, - Et d'une liste entre parenthèses de paramètres ; cette première ligne se termine par des double-points : - Les instructions qui forment le corps de la fonction commencent sur la ligne suivante, indentée. - Dès que l'instruction return est exécutée, l'exécution de la fonction se termine. II. Utilisation des fonctions dans un programme L’approche efficace d’un problème complexe consiste souvent à le décomposer en plusieurs sous-problèmes plus simples qui seront étudiés séparément. Or il est important que cette décomposition soit représentée fidèlement dans les algorithmes pour que ceuxci restent clairs. D’autre part, il arrivera souvent qu’une même séquence d’instructions doive être utilisée à plusieurs reprises dans un programme, et on souhaitera bien évidemment ne pas avoir à la reproduire systématiquement. Page 5 Résumé : structure d’un programme Python type Infos. Un programme peut utiliser un nombre quelconque de fonctions, lesquelles sont définies localement ou importées depuis des modules externes. Exercice : 1- Ajouter à ce programme une fonction permettant de savoir si un triangle est isocèle ou non. 2- Tester son bon fonctionnement. Page 6