Vous êtes sur la page 1sur 3

Revenons à notre jeu « calculatrice » :

Partie 2 et 3
 Interroger 5 fois l’utilisateur et ajouter un score (1 par bonne réponse et -1 sinon)
 Améliorer par la suite l’affichage en ajoutant à chaque interrogation le numéro d’essai et
à la fin du jeu le résultat final comportant le nombre d’essais et le score final.

Objectifs :
 La structure de contrôle itératives complète (boucle Pour)
 Les listes

Décomposition de problème :
Initialiser le score à 0 pour débuter le jeu

Tirer deux entiers aléatoires entre 0 et 10

Demander et saisir le produit p de l’utilisateur


Répéter
5 fois
p = a*b
Vrai Faux

Score+=1 Score-=1
Afficher bravo ! Afficher c’est faux !

Fin de jeu : Afficher le nombre d’essais et le score final

Prof : Mme A.Hanen & Mr S.Akrem Page 1


Algorithme1 Programme python1 :
Début calculatrice from random import*
score=0
[score=0] pour i de 0 à 4 faire
for i in range(5):
aAléa (0 ,10) a=randint(0,10)
bAléa (0 ,10) b=randint(0,10)
Afficher (a,’’*’’, b,’’= ’’) p=int(input(str(a)+"*"+str(b)+"="))
Lire(p) if (a*b==p):
Si (a*b=p) alors score=score+1
print("Bravo! score=", score)
Score=score+1 else:
Afficher (‘’Bravo ! score=’’, score) score=score-1
Sinon print("c'est faux! score=", score)
Score=score-1
Afficher (‘’c’est faux ! score=’’, score)
Fin si
Fin pour
Fin calculatrice

Améliorons l’affichage :

Algorithme2 Programme python2 :


Début calculatrice from random import*
score=0
1) [score0] pour i de 0 à 4 faire
for i in range(5):
aAléa (0 ,10) a=randint(0,10)
bAléa (0 ,10) b=randint(0,10)
Afficher (’’Essai’’, i+1, ’’ :’’, a,’’*’’, b,’’= ’’) p=int(input("Essai"+str(i+1)+":"+
Lire(p) str(a)+"*"+str(b)+"="))
Si (a*b=p) alors if (a*b==p):
score=score+1
Score=score+1
print("Bravo! score=", score)
Afficher (‘’Bravo ! score=’’, score) else:
Sinon score=score-1
Score=score-1 print("c'est faux! score=", score)
Afficher (‘’c’est faux ! score=’’, score) print("*********************************")
print(" Résultat finale : ")
Fin si
print(i+1," essais et votre score=", score)
Fin pour
2) Afficher (‘’Résultat finale : ‘’, i+1,
‘’essais et votre score=", score)
Fin calculatrice

Prof : Mme A.Hanen & Mr S.Akrem Page 2


Break de savoir :
Note :
 Les boucles s’utilisent pour répéter plusieurs fois un traitement.
 La boucle (Pour) : utilisée quand on sait d’avance le nombre de fois de la répétition.
En algo En python
[ ] Pour compteur de Vi à Vf [Pas = valeur] faire for compteur in séquence :
Traitement Traitement
Fin pour Les éléments de la séquence sont issus
d'une chaîne ou d'une liste.

 Une liste est une structure de données contenant plusieurs éléments de même type
ou de types différents, délimités entre 2 crochets.

Activité1: Fonction range() :


Exécutez et interpréter les scripts suivantes :

Scripts Résultat Interprétation


maliste = range(10) range(n) ou range(0,n) : liste par
print(maliste) range(0, 10) défaut ça commence par 0 à n-1,
avec pas=1
print(list(maliste))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] List() : permet d’afficher les
éléments de notre liste
print(type(maliste)) <class 'range'> Type liste
maliste =
range(1,10,2) [1, 3, 5, 7, 9] range(début,fin exclu,pas)
print(list(maliste))
print(maliste[2]) 5 Accéder au 3ème élément a l'indice 2

Prof : Mme A.Hanen & Mr S.Akrem Page 3

Vous aimerez peut-être aussi