Anzeige

La programmation modulaire en Python

24. Jan 2019
Anzeige

Más contenido relacionado

Anzeige

Último(20)

La programmation modulaire en Python

  1. Cours-2- La Programmation Modulaire en Python Professeur: ARROU ABDESSELAM LYCÉE LISSANE EDDINE IBN AL-KHATIB CENTRE CPGE –LAAYOUNE-
  2. La programmation modulaire Certains problèmes conduisent à des programmes longs, difficiles à écrire et à comprendre. On les découpe en des parties appelées sous-programmes ou modules. Les fonctions et les procédures sont des modules (groupe d'instructions) indépendants désignés par un nom. Elles ont plusieurs intérêts : o Permettent de "factoriser" les programmes, càd de mettre en commun les parties qui se répètent . o permettent une structuration et une meilleure lisibilité des programmes . o facilitent la maintenance du code (il suffit de modifier une seule fois). o Ces procédures et fonctions peuvent éventuellement être réutilisées dans d'autres programmes.
  3. La programmation modulaire
  4. Définition d'une fonction Syntaxe : L'appel d'une fonction : def nom_fonction (par1,par2,…,parN) : bloc d’instructions … return expression variable=Nom_fonction(par1,par2,…paraN)
  5. Définition d'une fonction Exemple 1: Écrire une fonction volume_sphere(R) qui rend le volume d'une sphère on utilisant la fonction cube(r) qui rend le cube du rayon R. Sachant que V= (4*pi*cube(r)) /3
  6. Définition d'une fonction Correction de l'exemple 1:
  7. Définition d'une fonction Exemple 2: Écrire une fonction somme_carre(X,Y) qui rend la somme carré de deux réels X et Y.
  8. Définition d'une fonction Correction de l'exemple 2:
  9. Définition d'une procédure Syntaxe : L'appel d'une fonction/procédure sans valeur de retour : def nom_fonction (par1,par2,…,parN) : bloc d’instructions … Nom_fonction(par1,par2,…paraN)
  10. Définition d'une procédure Exemple 1: Écrire une fonction division(X,Y) qui affiche le quotient et le reste de division de deux nombres réels(X ,Y)passés en paramètres.
  11. Définition d'une procédure Correction de l'exemple 1:
  12. Remarque En python on peut utiliser les tuples pour renvoyer plusieurs valeurs. Exemple :
  13. Exercices 1-Ecrire une fonction f(x) qui rend l'image de x selon la fonction polynomiale: f (x):x7 +6x6 +15x4 +23x3 +x-9 2-Ecrire une fonction factorielle(N) qui prend en paramètre un entier positif N, puis rend le factorielle de N . N! = N * (N-1) *…* 3 * 2 * 1 (Par convention : 0 ! = 1) 3-Ecrire une fonction ordre(x,y,z) qui rend "Vrai" si les trois nombres passé en paramètre sont rangés par ordre croissant, dans le cas contraire rend "Faux".
  14. Les paramètres d'une fonction Les paramètres servent à échanger des données entre le programme principal et la fonction appelée. Lors de l'appel d'une fonction, deux formes de paramètres entrent en jeu : les paramètres formels et les paramètres effectifs.
  15. Les paramètres d'une fonction Les paramètres formels : Les paramètres placés dans la déclaration d'une fonction sont appelés paramètres formels. Ces paramètres peuvent prendre toutes les valeurs possibles mais ils sont abstraits (n'existent pas réellement) Les paramètres effectifs : Les paramètres placés dans l'appel d'une fonction sont appelés paramètres effectifs. Ils contiennent les valeurs pour effectuer le traitement.
  16. Les paramètres d'une fonction Exemple 1: Ecrire une fonction maximum(N,M) qui prend en arguments deux entiers N et M et qui rend la valeur maximale.
  17. Les paramètres d'une fonction Correction de l'exemple 1: Paramètres formels Paramètres formels
  18. Les valeurs par défaut des paramètres d'une fonction Dans la définition d’une fonction, il est possible (et souvent souhaitable) de définir une valeur par défaut pour chacun des paramètres.
  19. Les valeurs par défaut des paramètres d'une fonction Remarque :  Vous pouvez définir une valeur par défaut pour tous les paramètres de la fonction.  Vous pouvez même définir une partie d’entre eux seulement. Dans ce cas, cependant, les paramètres sans valeur par défaut doivent précéder les autres dans la liste.
  20. La portée des variables Selon l’emplacement de déclaration, on peut avoir deux types de variables dans une fonction: des variables locales ou des variables globales. La porté désigne le champs ou l'emplacement de définition et la durée de vie .
  21. La portée des variables Variables locale: Est une variable déclarée dans le corps d’une fonction . Elle n’est accessible qu’à l’intérieur de la fonction dans laquelle elle a été déclarée. Variables globale: Est une variable définie en dehors d'une fonction. Elle est visible et utilisable dans tout le programme (mais la fonction ne peut pas le modifier)
  22. La portée des variables : variable locale Exemple :
  23. La portée des variables : variable globale Exemple :
  24. La portée des variables : variable globale Exemple : Le mot-clé global permet de modifier une variable globale à l'intérieur d'une fonction.
  25. Transmission(passage) des paramètres Les échanges d'informations entre une fonction et le programme principale se font par l'intermédiaire de paramètres. Il existe deux principaux types de passages de paramètres qui permettent des usages différents : Le passage par valeur et le passage par référence(adresse).
  26. Le passage par valeur Dans ce type de passage, le paramètre formel reçoit uniquement une copie de la valeur du paramètre effectif. La valeur du paramètre effectifs ne sera jamais modifiée. Les variables de type numériques et de type non modifiables(chaîne (str),tuple) passent par valeur.
  27. Le passage par valeur Exemple :
  28. Le passage par référence Dans ce type de passage, la fonction utilise l'adresse du paramètre effectif. Lorsqu'on utilise l'adresse du paramètre, on accède directement à son contenu. La valeur de la variable effective sera donc modifiée. Les variables modifiables(liste,dictionnaire,ensembles)passent par référence (adresse).
  29. Le passage par référence Exemple :
  30. La fonction anonyme "lambda" Python permet la création de fonctions anonymes (sans nom et donc non définie par def) à l’aide du mot-clé lambda. Une fonction anonyme ne peut pas avoir d’instruction return et doit forcément retourner une expression. Syntaxe : Variable=lambda par1,par2,…,parN : Expression
  31. La fonction anonyme "lambda" Exemple : Avec def Avec lambda def som(a,b): return (a+b) som=lambda a,b:a+b #appel de la fonction som(a,b) def carre(n): return (n*2) carre=lambda n:n*2 #appel de la fontion caree(n) def absolue(n): if n<0: n=n*(-1) return n abs=lambda n:n if n>=0 else -n #appel de la fontion abs(n)
  32. Les fonctions récursives Une fonction est dite récursive si elle s’appelle elle-même : on parle alors d’appel récursif de la fonction. Tout fonction récursif doit posséder un cas limite (cas trivial) qui arrête la récursivité. Exemple :
  33. Les fonctions récursives Correction de l'exemple :
Anzeige