info113, TD2 groupes MATH-STIC, MASS Pierre.Hyvernat@univ-savoie.fr http://lama.univ-savoie.fr/~hyvernat/enseignement.php 1. Booléens et exécution conditionnelle ======================================= Exercice 1 ========== Initialisez une variable pour savoir si une chaine de caractères est égale à "oui" ou "OUI". # var s: chaine var estOui: booléen s = "oui" ... print(estOui) # doit afficher "True" Même question, mais pour savoir si une chaine de caractère est égale à "oui" ou "OUI" ; ou bien "non" ou "NON". Exercice 2 ========== Une année est bissextile quand c'est un multiple de 4. Il y a une exceptions : les années multiple de 100 ne sont pas bissextiles. Cette exception a elle même une exception : les années multiples de 400 sont quand même bissextiles. Par exemple, 1996 est bissextile, 1900 n'est pas bissextile et 1600 est bissextile. Écrivez quelques lignes de Python pour initialiser une variable estBissextile suivant que la variable annee est bissextile ou non : # var annee: entier estBissextile: booléen annee = 2000 ... print(estBissextile) # doit afficher "True" Écrivez une fonction estBissextile qui teste si une année est bissextile. Cette fonction prend une année en argument et renvoie un booléen. Quelles différences y'a t'il entre les deux versions ? Exercice 3 ========== Simplifiez les fonctions suivantes def f1 (a, b): """a et b de type entier""" if (a > b): return True else: return False def f2 (a, b): """a et b de type entier""" if (a > b): return False else: return True def f3 (a, b, c): """a, b et c de type entier""" if (a > b): if (b > c): return True else: return False else: return False def f4 (a, b, c): """a, b et c de type entier""" if (a < b): return True else: if (a < c): return True else: return False 2. Calculs et fonctions ======================= Exercice 1 ========== Écrivez ce qu'il faut pour lire deux variables entières heure et minutes au clavier puis afficher l'heure qu'il sera une minute plus tard. Par exemple, si l'utilisateur tape 21 et 32, le programme doit afficher :"Dans une minute, il sera 21h33 ". Exercice 2 ========== Un magasin de reprographie facture 0,10 euros les dix premières photocopies, 0,09 les vingt suivantes et 0,08 au-delà. Écrivez une procédure qui qui demande le nombre de photocopies effectuées et qui affiche la facture correspondante. Décomposez le problème en fonctions. Exercice 3 ========== Écrivez quelques lignes de Python pour : - initialiser trois variables entières a, b et c, - afficher les solutions de l'équation du second degré a X^2 + b X + c = 0. Décomposez le problème en fonctions et procédures.