La fĂȘte foraine
Vous vous amusez Ă une fĂȘte foraine. Vous dĂ©cidez de jouer au stand "Gagnez le gros lot !". Des lots visuellement identiques, numĂ©rotĂ©s de 1 Ă 32, sont exposĂ©s. Ils ont tous la mĂȘme valeur de 1âŹ, sauf un qui a la valeur de 100 âŹ. Vous devez trouver une stratĂ©gie pour dĂ©terminer Ă coup sĂ»r le numĂ©ro du lot de valeur 100 âŹ.
La rÚgle du jeu est la suivante : vous pouvez sélectionner deux groupes de lots, nommés groupe_1
et groupe_2
. Le forain (qui connaßt bien-sûr le numéro du gros lot) vous donnera une indication sur les valeurs globales de groupe_1
et groupe_2
.
Si les deux groupes ont la mĂȘme valeur globale, il dira "identique"
, si le groupe_1
a plus de valeur, il dira "groupe_1"
, sinon il dira "groupe_2"
.
đ„ Vous ne pouvez pas lui demander plus de six indications.
La classe Lots_en_jeu
permet de créer une sélection de lots numérotés qui seront mis en jeu par le forain.
Vous devez rédiger la fonction gros_lot
qui prend en paramĂštres :
lots
de la classeLots_en_jeu
;- le numéro
debut
de début de la zone de recherche (inclus) ; - le numéro
fin
de fin de la zone de recherche (exclu).
Cette fonction renvoie le numéro du lot de valeur 100 ⏠dans lots
.
Les indications données par le forain sont mises en oeuvre par indication(lots, debut_1, fin_1, debut_2, fin_2)
.
Le groupe_1
contient les lots dont les numéros de début et de fin sont debut_1
(inclus) et fin_1
(exclu).
Le groupe_2
contient les lots dont les numéros de début et de fin sont debut_2
(inclus) et fin_2
(exclu).
Le résultat renvoyé sera :
"groupe_1"
si legroupe_1
a la plus grande valeur ;"identique"
si les deux groupes ont la mĂȘme valeur ;"groupe_2"
si legroupe_2
a la plus grande valeur.
Ainsi indication(lots, 1, 15, 15, 30)
compare les valeurs totales des lots de numéros allant de 1
(inclus) Ă 15
(exclu) pour le groupe_1
et de 15
(inclus) Ă 30
(exclu) pour le groupe_2
.
La fonction indication
est dĂ©jĂ Ă©crite, vous ne devez pas lâĂ©crire.
On fournit ci-dessous quelques exemples dâutilisation des diffĂ©rentes fonctions :
>>> lots = Lots_en_jeu() # une sélection de 32 lots
>>> lots
'Une sélection de 32 lots'
>>> # comparaison des valeurs totales des groupes
>>> # de lots dont les numéros sont dans [1, 20[ et [28, 32[
>>> indication(lots, 1, 20, 28, 32)
'groupe_1'
>>> indication(lots, 5, 15, 17, 27)
'identique'
>>> gros_lot(lots, 1, 33)
2
Votre fonction, pour 32 lots, ne doit pas appeler plus de 6 fois la fonction indication
.
Toute tentative juste de résolution sera valorisée.
Exercice
Compléter ci-dessous :
# Tests
(insensible Ă la casse)(Ctrl+I)
(Ctrl+Clic pour inverser les colonnes)