TD8 - LaBRI

publicité
Université Bordeaux 2
Licence 1er semestre (2009/2010)
Algorithmes et structures de données : TD 8
Listes 1D, nombres entiers aléatoires
Notez :
• a = input() affecte la variable a avec une variable de type entier, flottant, ou booléen.
a = raw input() affecte la variable a avec une variable de type chaı̂ne de caractères.
• Pour utiliser des nombres aléatoires, vous devez importer la bibliothèque random une
fois, en tout début du programme !
import random
#...
a = random.randint(1,10) # un nombre aléatoirea entre 1 et 10
• Pour intialiser des listes, par exemple avec 5 élements, vous disposez des instructions
suivantes :
liste = [0] * 5
ou
liste = [0,0,0,0,0]
Exercice 8.1 Listes et nombre aléatoires I
1. Ecrire un programme en python qui affecte la variable nombre avec un nombre entier aléatoire
entre 0 et 6, et qui l’affiche à l’écran.
2. Ecrire un programme en python qui, en fonction de la variable aléatoire, génère un jour de
semaine (lundi, mardi, ..).
3. Créer une liste qui s’appelle joursemaine qui contient 7 éléments de type chaı̂ne de caractère
: les noms des 7 jours de la semaine.
4. Ecrire un programme en python qui utilise cette liste, et qui affiche un nom du jour de semaine
aléatoires (lundi, mardi, ..).
Exercice 8.2 Jeu de nombres aléatoires
1. Ecrire un programme en python qui génère deux nombres entiers aléatoires entre 1 et 100,
un pour l’ordinateur, stocké dans la variable ordinateur, et un pour le joueur, stocké dans la
variable joueur. Afficher les nombres aléatoires pour l’ordinateur, et pour le joueur. Le gagnant
du jeu est celui avec le plus grand nombre. Déterminer et afficher le gagnant !
2. A la fin du jeu, demander à l’utilisateur s’il veut rejouer (Utiliser une boucle qui imbrique le
jeu entier !).
Exercice 8.3 Listes et nombre aléatoires II
1. Ecrire un programme en python qui simule une lancée d’un jeu de 5 dés (donc une liste de 5
éléments de nombres aléatoires entre 1 et 6).
2. Afficher le lancé des 5 dés.
3. Déterminer le dé avec la plus grande valeur.
4. Déterminer s’il y a au moins un dés avec la valeur 6, et afficher, en fonction, soit ”il y a au
moins un dés avec la valeur 6”, soit ”il n’y a pas de dés avec la valeur 6”.
5. On cherche à déterminer les combinaisons d’un jeu de Yams (pair, brelant, carré, yams) dans
le lancé de dés. Pour cela, on doit compter le nombre d’occurrences de chaque valeur. Utilisez
une liste de 6 éléments pour construire l’histogramme des valeurs. Par exemple, pour une lancé
de dés de [5,4,6,4,1], l’histogramme est [1,0,0,2,1,1].
Afficher la combinaison correspondante (pair, brelant, carré, yams), dans l’exemple ci-dessus,
Vous avez fait une pair.
Exercice 8.4 Bonus
1. Pour un contrôle de connaissances, traduire les algorithmes de tous les séances TD précédentes
en python !
2
Téléchargement