TP - Programme testé et vérifié☘
Dans le dossier [NSI], créez le dossier [F03-Finaliser_Programmes].
Dans ce dossier, enregistrez vos fichiers avec le nom donné à la partie
(TPF03.21.py, TPF03.22.py, ...). Il faudra créer un nouveau programme
pour chaque partie.
TPF03.21 - Factorielle☘
On considère la fonction factorielle() définie par :
1 2 3 4 5 6 7 8 9 | |
- Insérez le plan de test travaillé en TD dans le docstring de cette fonction.
- Ajoutez une assertion afin que le paramètre
nrespecte les spécifications. -
Exécutez ce code afin qu'il soit testé automatiquement par le module
doctest.
Vérifiez que les tests ne « passent » pas.Une piste
Ne pas oublier le programme principal qui contient l'appel au module
doctest:11 12 13 14
##----- Mise en oeuvre des tests -----## if __name__ == "__main__": import doctest doctest.testmod() -
Insérez des
print()dans ce code pour suivre l'évolution des variables puis corrigez ce code.
TPF03.22 - Plus grande puissance de 2 inférieure☘
On considère la fonction pgpi() spécifiée par :
1 2 3 4 5 | |
- Insérez le plan de test travaillé en TD dans le docstring de cette fonction.
- Ajoutez une assertion afin que le paramètre
mrespecte les spécifications. - Complétez ce code puis exécutez-le afin qu'il soit testé automatiquement
par le module
doctest.
TPF03.23 - Une fonction mystérieuse☘
Un élève a réalisé le code suivant :
1 2 3 4 5 6 7 8 9 10 11 | |
- Exécutez ce code et corrigez les erreurs de logique que vous trouverez.
- Une fois ces erreurs corrigées ajoutez les
print()nécessaires pour comprendre le rôle de cette fonction. - Modifiez les noms
mystere,metnpour qu'ils soient plus explicites. - Ajoutez un docstring à cette fonction dans lequel les préconditions sur
borne_supet les postconditions sur le résultat renvoyé sont explicites. - Ajoutez une assertion afin que le paramètre
borne_suprespecte les spécifications.