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 : /
.128013goP,iSdn1)l7_h(up3ém/z8wcLNe54yv T!20B9t;=ak+f6b:sr050h0C0O0R0f0l0Y0H0z0l0R0Y0Y0Q010O0f0r010406050Y0q0u0u0R0Z0F040g0c0l0q0@0c0i050v0~1012140|0r04051k1d1n0v1k0|0h0f0G0,0.0:0=0o0f0b0o0l1B0o0O0`050%0W0l0C1w0/0;011A1C1E1C0O1K1M1I0O0Z1l0O0o1O1y010U0)0C0i0R0u0C010,170Y0r0R0i0=0K1I1_1{1)1Q1,1M1/1;0`0a0H0d0Z0c0r0c0Y0f1a0i0H0#1@0Z0Z0C0z2i1d200i1l0v1%2v1!1$1#1J0h220=1E0i1.2f1I1t1v0-1P2F0f2H0i0c2L1I0r2o1l2t2v2Z0}1`2j2N1*2S0Z110l0`0H0j2s2%0{2$212)1Q2+2-2/0K2=1{2@2t2E012|0R2.040H0s302u0|332`0=36380H0E3c322%343i2/0D3m3e3o3g350c2,372/0V3t2^2(1x2{3y2}390m3D3f3G3h3I3A390x3M3v3O3x3z3j0N3U2_3W3q040j0L3#3F2O3X3J0j2;1e2?3u3$3.3(0j2 3?313^3-2*3Q380j3b3~3d3E3p430`0j3l473n3_423Y4c3s4f404a4j3)3C4m493w3{3L4s3N3`4b3)3T4x3V4z4p0j3!4f1o2X1d2L2y0h1$2D3w0z2T1=1l4N1m4L2#4J4T0#2Y4E1*0S0i0`0U2c0u3m4t3W0y2/4;4y2*4,040Z1{0h0c4:4J4`1Q4@394_4)1Q4+0`0f0u2e0Z0O3m0H4=3`0`4~0i1t0i5h4m4n3w0S0`0#0U584h554^53593h0U0`0r180Y0n0c0q0n0u0c2Q0Y5z411Q0_040p0k0X3t0H5$5j543h0`0i0W5O0F0Y0O0C2o5i5k1*0c0`0Q5@5)355m4 2Q5r2#5~5W0p5T340u0f4c683w5W0e5}5E016a0`0N4I646i5W0k5#5%5^2{5+5-5;5:6h5A0=5`045|4f5(6i5,5c5q6d3W666M3`0W6K0r196P1*6O5D6B010Y0j0`002b2d2f0C0w0H0q2j2S0u0W2o0H1.1!1N0j6^0O0H6m0H0X0H006V5V0`0k6r4m5%6H6Z4|4T5e5;0q0Z6A5U6C5{7k696b3)3t067b6u0=5v040y1A1M7o4u6w5.5:5=0C7C3W6D0J6F2Z7c7l5 045,0n6y632?7P340c564 7J5l047f0r7h7j6G7v016D020l0O0P7%1*6k3)3+6Y7Q5W5!7a7b6t5~7e517+0C7i7_1Q6D7N7X7/867g897-7O7/6D0T8b0=7{3=2Z7t835$7/7x0f5y7.857E0u5/5;5?8B6i7;0b7@8p7R7T7V750=806s8v7u8C7S6x0C6z8I6Z8d8N6J04628R016X6o7d6R8+0i6T7W317/8/2?7/6#6%0I2c0r0H0r0$2h0H0J0H0I8!5;6-1.4T6@72747~346q798t8V7Y5u0`0C0*7I9k6e0`819o9p846I7E8Q8$7Q8(9G3p8=8,9w6N0`679N6Q6S6U9R6W9P8-8 0400912d0H0b5n2D999b7G9e0i9g1N9i8-9m7s8W6i8y8A8l8X7T8E7G8H9~8J5{8e319q3%9E9c9@9y8U838g8=2W9M8:7 9X9V1Q9Z000M4~0G0c980H0A1N6;6?1N0t0%979jal9l0`6g9J7D8Y7F8G9vaH9x049n3@9pah5H0Zak8}65anaR3W0Y1~04010B51aB2k008!0Y0(0+7201ad04aKa47d0`7*7,a|aU3 9`6Z7x9t0YaQa#6pae828vaX04aj6Lao8Sa%bd6Zaq0d5=0h0qaway0HaA6@aD0(6~aGbpama}8)8D8F7Hb43D0v4$0C2v2WbQ4M1u4O2y2B2w0R1LbT0v4N0|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