Nous allons voir ici comment effectuer des tests.
A chaque étape, vous pourrez tester des codes et vous entraîner.
Cette application est en construction, il est probable que des problèmes surviennent.
print
input
if
et else
Commençons par un exemple de demande de mot de passe :
Exemple :
proposition = input("Entrez le mot de passe : ") if proposition == "1234": print("Vous pouvez entrer") else: print("Vous ne pouvez pas entrer")
Entrez le mot de passe : 5678 Vous ne pouvez pas entrer
==
:
Vous avez surement remarqué les guillements autour de "1234"
. En effet, la fonction input()
prend et renvoie une chaîne de caractères : un string
.
Si l'on souhaite travailler avec des nombres entiers, il faut ajouter une autre fonction : int()
. Ce n'est pas à connaître par coeur mais cela va nous permettre de continuer notre cours.
Un exemple de demande de mot de passe avec des nombres entiers :
Exemple :
proposition = int(input("Entrez le mot de passe : ")) if proposition == 1234: print("Vous pouvez entrer") else: print("Vous ne pouvez pas entrer")
Entrez le mot de passe : 1234 Vous pouvez entrer
Vous l'avez peut-être remarqué ? Dans l'exemple précédent, si l'utilisateur entre des lettres (abc par exemple), la machine va renvoyer un message d'erreur :
La machine essaye de convertir abc
en un nombre entier à l'aide de la fonction int()
mais cela ne passe pas.
Nous allons travailler sur les nombres entiers...
Le fait que le mot de passe soit affiché dans le code c'est un peu trop facile non ?
random
Nous allons importer et utiliser des nombres entiers aléatoires pour générer un mot de passe :
Exemple :
import random mdp = random.randint(0, 10) proposition = int(input("Entrez le mot de passe : ")) if proposition == mdp: print("Vous pouvez entrer") else: print("Vous ne pouvez pas entrer")
Entrez le mot de passe : 2 Vous pouvez entrer Entrez le mot de passe : 2 Vous ne pouvez pas entrer
A chaque exécution du programme, la machine génère un nombre entier aléatoire entre 0 et 10. Ce nombre est stocké dans une variable que l'on appelée ici mdp
.
Exercice :
Tester, corriger et compléter un programme pour permettre à un lièvre et une tortue de se battre aux dés.
Il est possible d'utiliser des opérations comme : +, -, *, /, **
dans les tests :
Exemple de calcul mental :
import random nombre1 = random.randint(0, 10) print("3 * ", nombre1, "= ?") proposition = int(input("Votre réponse : ")) if proposition == 3*nombre1: print("GG") else: print("Il faut revoir sa table de 3 !")
3 * 5 = ? Votre réponse : 15 GG 3 * 3 = ? Votre réponse : 10 Il faut revoir sa table de 3 !
Exercice :
Améliorer le test de calcul mental pour demander le produit de deux nombres aléatoires.
nombre1
donc on peut créer nombre2
...Exercice : Mini Craps !
Votre mission : Créer un jeu, le mini Craps. Voici les règles :
and
et or
Il est possible de fusionner des tests à l'aide des mots clés and
et or
.
Exemple :
import random de1 = random.randint(0, 6) de2 = random.randint(0, 6) print("Dé numéro 1 :", de1) print("Dé numéro 2 :", de2) if de1 == 6 or de2 == 6: print("Vous avez obtenu au moins un 6") if de1 == 6 and de2 == 6: print("Paire de 6 ! Bravo !")
Dé numéro 1 : 5 Dé numéro 2 : 4 Dé numéro 1 : 2 Dé numéro 2 : 6 Vous avez obtenu au moins un 6
Exercice : Avec 3 dés !
Votre mission : Créer un jeu dont les règles sont les suivantes :
("Si a est différent de b alors..." se traduit en Python par if a != b:
)
while