Jeu "plus ou moins"

Le jeu du « plus ou moins » consiste à deviner un nombre entier choisi entre 1 et 99. Un élève décide de le coder en langage Python de la manière suivante :

  • le programme génère un nombre entier aléatoire compris entre 1 et 99 ;
  • si la proposition de l'utilisateur est plus petite que le nombre cherché, l'utilisateur en est averti. Il peut alors en tester un autre ;
  • si la proposition de l'utilisateur est plus grande que le nombre cherché, l'utilisateur en est averti. Il peut alors en tester un autre ;
  • si l'utilisateur trouve le bon nombre en 10 essais ou moins, il gagne ;
  • si l'utilisateur a fait plus de 10 essais sans trouver le bon nombre, il perd.

Note

La fonction randint est utilisée. Si a et b sont des entiers, randint(a, b) renvoie un nombre entier compris entre a et b, incluant les deux bornes.

Exemple
>>> plus_ou_moins()
Proposez un nombre entre 1 et 99 : 27
Trop petit ! Testez encore : 78
Trop grand ! Testez encore : 49
Trop grand ! Testez encore : 31
Trop petit ! Testez encore : 40
Trop petit ! Testez encore : 43
Trop grand ! Testez encore : 42
Bravo ! Le nombre était  42

Compléter le script suivant. Cet exercice ayant une part d'aléatoire, il faut absolument cliquer sur le bouton de validation pour vérifier votre code.

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : /
.128013aPL7wbtk;sy0nzN8,r dTmSBh3+pé=9c/2)!5u14:g6fo_liv(e050u0Z0h0b0W0V0k0t0G0V0b0k0k0E010h0W0C010406050k0M0w0w0b0s0l040x0T0V0M0@0T0n050H0~1012140|0C04051k1d1n0H1k0|0u0W0X0,0.0:0=0z0W0Q0z0V1B0z0h0`050%0g0V0Z1w0/0;011A1C1E1C0h1K1M1I0h0s1l0h0z1O1y010S0)0Z0n0b0w0Z010,170k0C0b0n0=0I1I1_1{1)1Q1,1M1/1;0`0a0t0c0s0T0C0T0k0W1a0n0t0#1@0s0s0Z0G2i1d200n1l0H1%2v1!1$1#1J0u220=1E0n1.2f1I1t1v0-1P2F0W2H0n0T2L1I0C2o1l2t2v2Z0}1`2j2N1*2S0s110V0`0t0N2s2%0{2$212)1Q2+2-2/0I2=1{2@2t2E012|0b2.040t0A302u0|332`0=36380t0O3c322%343i2/0L3m3e3o3g350T2,372/0R3t2^2(1x2{3y2}390e3D3f3G3h3I3A390q3M3v3O3x3z3j0F3U2_3W3q040N0m3#3F2O3X3J0N2;1e2?3u3$3.3(0N2 3?313^3-2*3Q380N3b3~3d3E3p430`0N3l473n3_423Y4c3s4f404a4j3)3C4m493w3{3L4s3N3`4b3)3T4x3V4z4p0N3!4f1o2X1d2L2y0u1$2D3w0G2T1=1l4N1m4L2#4J4T0#2Y4E1*0i0n0`0S2c0w3m4t3W0f2/4;4y2*4,040s1{0u0T4:4J4`1Q4@394_4)1Q4+0`0W0w2e0s0h3m0t4=3`0`4~0n1t0n5h4m4n3w0i0`0#0S584h554^53593h0S0`0C180k0U0T0M0U0w0T2Q0k5z411Q0_040Y0J0P3t0t5$5j543h0`0n0g5O0l0k0h0Z2o5i5k1*0T0`0E5@5)355m4 2Q5r2#5~5W0Y5T340w0W4c683w5W0r5}5E016a0`0F4I646i5W0J5#5%5^2{5+5-5;5:6h5A0=5`045|4f5(6i5,5c5q6d3W666M3`0g6K0C196P1*6O5D6B010k0N0`002b2d2f0Z0o0t0M2j2S0w0g2o0t1.1!1N0N6^0h0t6m0t0P0t006V5V0`0J6r4m5%6H6Z4|4T5e5;0M0s6A5U6C5{7k696b3)3t067b6u0=5v040f1A1M7o4u6w5.5:5=0Z7C3W6D0K6F2Z7c7l5 045,0U6y632?7P340T564 7J5l047f0C7h7j6G7v016D020V0h0j7%1*6k3)3+6Y7Q5W5!7a7b6t5~7e517+0Z7i7_1Q6D7N7X7/867g897-7O7/6D0B8b0=7{3=2Z7t835$7/7x0W5y7.857E0w5/5;5?8B6i7;0Q7@8p7R7T7V750=806s8v7u8C7S6x0Z6z8I6Z8d8N6J04628R016X6o7d6R8+0n6T7W317/8/2?7/6#6%0v2c0C0t0C0$2h0t0K0t0v8!5;6-1.4T6@72747~346q798t8V7Y5u0`0Z0*7I9k6e0`819o9p846I7E8Q8$7Q8(9G3p8=8,9w6N0`679N6Q6S6U9R6W9P8-8 0400912d0t0Q5n2D999b7G9e0n9g1N9i8-9m7s8W6i8y8A8l8X7T8E7G8H9~8J5{8e319q3%9E9c9@9y8U838g8=2W9M8:7 9X9V1Q9Z000y4~0X0T980t0d1N6;6?1N0D0%979jal9l0`6g9J7D8Y7F8G9vaH9x049n3@9pah5H0sak8}65anaR3W0k1~04010p51aB2k008!0k0(0+7201ad04aKa47d0`7*7,a|aU3 9`6Z7x9t0kaQa#6pae828vaX04aj6Lao8Sa%bd6Zaq0c5=0u0Maway0taA6@aD0(6~aGbpama}8)8D8F7Hb43D0H4$0Z2v2WbQ4M1u4O2y2B2w0b1LbT0H4N0|b%0$0(0*04.

Si votre script est juste, vous pouvez le tester ci-dessous (Cliquer sur Exécuter le code)

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier