Barème de notation : - Votre programme devra être découpé en plusieurs fonctions, chaque fonction doit avoir un rôle donné. /3 - Chaque fonction devra avoir sa « docstring » qui précisera le rôle et le type de chaque paramètre. /3 - Quand c’est pertinent, les fonctions devront fixer des préconditions sur les paramètres à l’aide de l’instruction « assert » /2 - Quand c’est pertinent, les fonctions devront fixer des postconditions sur leur résultat à l’aide de l’instruction « assert » /2 - Chaque fonction devra être testée individuellement (ce que l’on appelle des tests unitaires) à l’aide de l’instruction « assert ». /3 - Votre programme devra avoir une interface graphique (avec tkinter par exemple) /3 - votre programme a au moins un bouton qui provoque un changement lorsqu’il est cliqué /2 - votre programme a au moins un texte qui change après une action d’un·e utilisateur·ice /2 - Bonus : Votre programme peut aussi être lancé avec une interface texte (pas de fenêtre, juste des print et des input) /2 - Bonus : Votre programme fonctionne bien /2