Programmation impérative
Dans un premier temps nous allons utiliser la programmation impérative. Pas de panique ! c’est ce que vous savez faire. Il y a plusieurs façons de faire ce programme, nous allons commencer par la moins efficace.
Méthode 1
1) Complétez le code ci-dessous pour afficher le nom du vainqueur après avoir fait un test (le vainqueur est celui qui a la plus grande force) :
p1_nom = "Murzol"
p1_force = 50
p2_nom = "Grunak"
p2_force = 40
Méthode 2
Nous allons maintenant faire un code un peu plus « propre » en utilisant un tableau pour chaque personnage et une fonction pour faire le combat.
2) Complétez le code ci-dessous pour réaliser ce qui est demandé :
p1 = ["Murzol", 50]
p2 = ["Grunak", 40]
def combat(p1, p2):
…
Qu’avons-nous amélioré ici :
- une seule variable par personnage ;
- possibilité d’ajouter des caractéristiques simplement ;
- possibilité de faire un autre combat sans nouveau code (fonction).
Méthode 3
Nous allons maintenant améliorer notre code en utilisant des dictionnaires au lieu des tableaux.
3) Complétez le code ci-dessous pour réaliser toujours le même programme :
p1 = {"nom":"Murzol", "force":50}
p2 = {"nom":"Grunak", "force":40}
def combat(p1, p2):
…
Qu’avons-nous amélioré ici :
- code plus lisible ;
- programmation plus facile car le nommage des caractéristiques est explicite.
4) Ajoutez des doctests à la fonction combat()
de votre programme.