Jeu "plus ou moins"
Le jeu du « plus ou moins » consiste à deviner un nombre entier choisi entre 1 et 99. Un élève de NSI 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.
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
.128013:Lp(40zed3;N 1jo5_ên)Bh6,qcy!Cuv8i2+ms7=wlSatf9ORrg.TéPkbè/050j0i0T0S0I0Q0M0n0B0Q0S0M0M0O010T0I0d010406050M0F0L0L0S0Y0C040R0q0Q0F0 0q0u0n020S0L0d0l0n0X0i190Y0A0F0i0M050+16181a1c140d041A1H051K0+1K1M1H140j0I0G0@0_0{0}0x0I0Z0x0Q1!0x0T12050/0)0Q0i1V0`0|011Z1#1%1#0T1-1/1+0T0)0q0j1c1,0Y1I0T0x0@1f0M0d0S0u0}0J011;1X010U0;0i0u1n0i1+2c2e2j1?2m1/2p0L2r040a0n0%0Y0q0d0q0M0I1i1k0-2a0Y0Y0i0B2M1A2t0u1I0+282Y0T2625270j2v0}1%0u2o2J1+1S1U0^1=2,0I2.0u221T1+0d2R1I2W2Y33152d1k2@2k2|0Y190Q120n0o2V3713362u391?3b3d3f0J3i2e3k2W2+013p0S3e040n0k3t2X143w3n0}3z3B0n0f3F3v373x3L3f0r3P3H3R3J3y0q3c3A3f0y3W3l381W3o3#3q3C0N3*3I3-3K3/3%3C0H3?3Y3^3!3$3M0V3~3m403T040o0g453,2^413:0o3h1B3j3X464e480o3s4j3u4l4d3a3`3B0o3E4r3G3+3S4w120o3O4A3Q4m4v424F3V4I4t4D4M493)4P4C3Z4o3=4V3@4n4E493}4!3 4$4S0o444I1J311A2=2#0j2)3x0B222B0,1T1I300i323j3P054|0-544K1?0(0u120U2G0L564#2k0P3f5j4+3a5e040Y2e0j0q5i4:5k1?5m3C5o5b0}5d120I1o3#0T3P0n4W47125t0u1S0u5L4P4Q3Z0(120-0U5D4u5A5n5y5p3o0U120d1g0M0s0q0F0s0L0q2`1z5+5E0111040e0v0b3W0n675N5z3K120u0)5_0C0M0T0i2R5M5O4e0q120O6l6a3y5Q5u2`5V356s610e5%3x0L0I4F6C3Z610z6r5,0}6E120V4/6y6M60120v66686m3a6c6e6i6h6L5 6o046q4I696T6d5H5U6H406A6@4n0)6=0d1h6`2k6_5~5(0}0M0o12002F2H2J0i0h0n0F1k2|0L0)2R0n2o2$1:0o7m0T0n6Q0n0b0n00701?610v6W4P686/5 5r4|1o6i0F0Y6)74016+6-337G7P6O493W067F6Z5c120P1Z1/7O3S6#6f6h6j0i7+3Z6+0D7S3j7U7,046d0s6%6x7`7#0}0q5B5u7=5P047J0d7L7N6.837Q12020Q0T0l884e7W4a7z0}61657E7F6Y6s7I5w8c0i7M8n2k7R8E3o128b8d8H84120K8M018p6X8w7{5Y5H5$8f8y7-0L6g6i6k8Z6T6+020Z8l8Q5r7~808r6U048u337Z8U8w8g8;6$1y813u8V408G8*7H6|046w8@726S996}6 733x9e556s76780#2G0d0n0d0.2L0n0D0n0#927d7m0u4|7l7w7y9j6I6V7D8{8}954e5Z040i0=7;9J6^128`4k9O7!8!7}916(987P977T8 9a9c9W4e9l3u9/9h932X8g9@9|9n7704009q2H0n0Z5R2*9y9A7/7e2o9F1:9H9d9L7Y9$6T9R0I8Y9.9%7~8$7/8)aq8+6p7_948 7-8?9=719Y8T8~8y9a309;9f7P9~5a7P9oa20w5t0G0q9x0n0c1:7i7k1:0$0/9w9IaN9k126K9+7|as8%7:ai049M9!8}9_04aL6?aE7A126Bb2752h04010m5wa%0n0j001y0M0:0?7w01a_a:aw7H8J8A8Lb68^a{4sal5 9R9T0M9Va-9K8_aHby7P6;a 0YaM9m6TaP8gaS796j0j0FaYa!0na$7la)0:7sa,bO5 6J8:8#a@avb*aO6V3*0+58534;b`0+4@1A0T4_b 2%2Z21232#0S1.b|4@1GaQ3x2R0L0s0U0S0(0i0s0x0k121s1u1w1y7v561N3k1H0E0.6i0n0U1j2T0I1jbZ1:2R0uaW0IcJcN0u0z9D7m0U0U0.0n0;bZ000C0n0S9t0`be1:574}5s0.7M0u1Ab_040!057k13cz0_0n2R0GcP7s0SbW0L0t2A0ncs0n2K0ncH0S0Gb%c$0p5@0T0$cS0-0Y0u0I0*7l1`2.7v5Nc?2R0Tc:0nbb2.c=c-0!0n0W1k0S0d9u0Q1/c(0YcD0I0?0BctcD9E2M0?0-0?300q0B0$bV2R0Mc^cw14b}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
(Ctrl+I)
# Tests (insensible à la casse)(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
(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
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)