La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Algorithmes et structures de données Cours 10 Patrick Reuter

Présentations similaires


Présentation au sujet: "Algorithmes et structures de données Cours 10 Patrick Reuter"— Transcription de la présentation:

1 Algorithmes et structures de données Cours 10 Patrick Reuter http://www.labri.fr/~preuter

2

3 http://www.cifen.ulg.ac.be/inforef/swi/download/p ython_notes.pdfhttp://www.cifen.ulg.ac.be/inforef/swi/download/p ython_notes.pdf http://www.labri.fr/~preuter/asd2007

4 Pages 19 à 80, (sans chapître 6.3)

5 Contrôle continu mercredi, 5 décembre 2007

6 Corrections import random aleatoire = random.randint(0,6) print "Le nombre al´eatoire est ",aleatoire

7 Corrections import random aleatoire = random.randint(0,6) print "Le nombre al´eatoire est ",aleatoire if (aleatoire == 0): print "lundi" elif (aleatoire == 1): print "mardi" elif (aleatoire == 2): print "mercredi" elif (aleatoire == 3): print "lundi" elif (aleatoire == 4): print "lundi" elif (aleatoire == 5): print "lundi" elif (aleatoire == 6): print "lundi"

8 Corrections import random aleatoire = random.randint(0,6) print "Le nombre al´eatoire est ",aleatoire jourDeLaSemaine = ["lundi","mardi","mercredi","jeudi","vendredi","sa medi","dimanche"]

9 Corrections import random aleatoire = random.randint(0,6) print "Le nombre al´eatoire est ",aleatoire jourDeLaSemaine = ["lundi","mardi","mercredi","jeudi","vendredi","samedi","dimanche"] jourAleatoire = jourDeLaSemaine[aleatoire] print "Un jour de semaine al´eatoire :",jourAleatoire

10 Algorithme et programmes Algorithme –Moyen datteindre un but en répétant un nombre fini de fois un nombre fini dinstructions. –Donc, un algorithme se termine en un temps fini. Programme –Un programme est la traduction dun algorithme en un langage –compilable ou interprétable par un ordinateur.

11 Ingrédients dalgorithmes Affectation Condition/Comparaison Structure de contrôle –Branchements conditionnels (multiples) –Boucles Bloc dinstruction Fonctions et appels de fonctions

12 Question : "Quelle est la fonction qui permet de connaître la longueur d'une chaîne de caractères ?" Quelle elle est son argument (ou paramètre)? Quelle est sa valeur de retour (que renvoit la fonction) ?

13 Fonctions et appels de fonctions Question : "Quelle est la fonction qui permet de connaître la longueur d'une chaîne de caractères ou d'une liste ?" len Quelle elle est son argument (ou paramètre)? la chaîne de caractère ou la liste Quelle est sa valeur de retour (que renvoit la fonction) ?un nombre entier

14 Fonctions et appels de fonctions Question : "Quelle est la fonction qui permet à l'utilisateur d'entrer une chaîne de caractères ?" Quelle sont ses arguments (ou paramètres )? Quelle valeur de retour (ou que renvoit la fonction ?

15 Fonctions et appels de fonctions Question : "Quelle est le nom de la fonction qui permet à l'utilisateur d'entrer une chaîne de caractères ?" raw_input Quelle sont ses arguments (ou paramètres )? aucun argument Quelle valeur de retour (ou que renvoit la fonction ? une chaîne de caractères

16 Fonctions et appels de fonctions Question : "Quelle est la fonction qui permet de créer un nombre entier aléatoire ?" Quelle sont ses arguments (ou paramètres )? Quelle est sa valeur de retour (ou que renvoie la fonction) ?

17 Fonctions et appels de fonctions Question : "Quelle est la fonction qui permet de créer un nombre entier aléatoire ?" random.randint Quelle sont ses arguments (ou paramètres )? 2 entiers : borne inférieure est supérieure Quelle est sa valeur de retour (ou que renvoit la fonction) ? un nombre entier

18 Appel de fonctions Affectation d'une variable s = input()# aucun paramètre longueur = len(s) # s est le paramètre aleatoire = random.randint(inf,sup) # inf et sup sont les # paramètres s, longueur, et aleatoire sont affectés avec les valeurs de retour des fonctions

19 Fonction Bloc dinstructions regroupé sous un nom et sexécutant à la demande (appel) qui peut prendre des paramètres (arguments) Avantages : * réutilisabilité * meilleure lisibilité * travail en équipe

20 Fonction une fonction est définie une fois elle peut être utilise plusieurs fois ! Avantages : * réutilisabilité * meilleure lisibilité * travail en équipe * …

21 Fonction prédéfinies (integrées) len(s), raw_input() Fonction dans des modules random.randint(a,b) Fonctions originales (fonctions propres)

22 Fonctions originales en algorithme : fonction nom_fonction(paramètres) [renvoyer valeurDeRetour] fin fonction

23 Fonctions originales en python : def nom_fonction(paramètres) [return valeurDeRetour]

24 Fonctions – Exemple : Définition de la fonction def double(x):# paramètre x a = 2 * x return a# valeur de retour Appel de la fonction a = double(4) print a# affiche 8 b = double(8) print b# affiche 16

25 Autre exemple f(x) = x 2 def f(x):# paramètre x a = x * x return a# valeur de retour y1 = f(1) y2 = f(10) y3 = f(4) y4 = f(7)

26 Appel d'une fonction dans une fonction def cube(x): return x*x*x def volumeSphere(r): return 4.0 * math.pi * cube(r) / 3.0 y1 = volumeSphere(3) y2 = volumeSphere(7)

27 Circonference d'un rectangle def circonference(a, b): circ = 2 * a + 2 * b return circ x1 = circonference(4,5) x2 = circonference(2,3)

28 Valeur de retour –il peut y avoir plusieurs instructions "renvoyer" ( return ) –lorsque l'algorithme rencontre une instruction "renvoyer" ( return ), la fonction est quitté

29 Exemple def moitie(x): print "debut de la fonction" return x/2 print "fin de la fonction" print "debut du programme" p = moitie(4) print p print "fin du programme" L'affichage donne : debut du programme debut de la fonction 2 fin du programme


Télécharger ppt "Algorithmes et structures de données Cours 10 Patrick Reuter"

Présentations similaires


Annonces Google