rendre la monnaie

On considère dans cet exercice un algorithme glouton pour le rendu de monnaie. Pour rendre une somme en monnaie, on utilise à chaque fois la plus grosse pièce possible et ainsi de suite jusqu’à ce que la somme restante à rendre soit nulle.

Les pièces de monnaie utilisées sont :

pieces = [1, 2, 5, 10, 20, 50, 100, 200]

On souhaite écrire une fonction rendu_monnaie qui prend en paramètres

  • un entier somme_due représentant la somme à payer ;
  • un entier somme_versee représentant la somme versée qui est supérieure ou égale à somme_due ;

et qui renvoie un tableau de type list contenant les pièces qui composent le rendu de la monnaie restante, c’est-à-dire de somme_versee - somme_due.

Ainsi, l’instruction rendu_monnaie(452, 500) renvoie le tableau [20, 20, 5, 2, 1].

En effet, la somme à rendre est de 48 euros soit 20 + 20 + 5 + 2 + 1.

Compléter le code ci dessous, puis le tester :

A tester
>>> rendu_monnaie(700, 700)
[]
>>> rendu_monnaie(102, 500)
[200, 100, 50, 20, 20, 5, 2, 1]
Compléter ci-dessous

###(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 : 5/5

.128013nco0m/gS-.d;fw,7D2qyà)Oe[é]h43vRlrb_:èp96k5 i=8a(sP1tu050l0y0#0W0T0H0Y0S0c0H0W0Y0Y0U010#0T0N010406050Y0$0f0f0W0I0u040i0d0H0$0`0d0b0S020W0f0N0m0S0G0y140I0t0$0y0Y050g111315170 0N04051C1v1F0g1C0 0l0T0F0/0;0?0^0;0b0h0$0W0h0y0j0N0u0#0C1e0S0C0T0h0C0H1+0C0#0}050*0J0H0y1O0=0@011*1,1.1,0#1@1_1=0#0I1D1$0/1a0Y0N0W0b0^0s011{1Q010n0,0y0b1i0y1=2d2f2k1}2n1_2q0f2s040a0S0Z0I0d0N0d0Y0T1d1f0(2b0I0I0y0c2N1v2u0b1D0g1$2Z2729281?0l2w1R0T0b2p2K1=1L1N0:1|2-2/0b0d2?1=0N2S1D2X2Z33102e1f2^2l2|0I140H1=0W1)2S0n0^030K0K0c2}0y1.2{0d0j0!3u0}0S0!1v0W34370~362v391}3b3d3f3h0y3j013l3n3p3r2:3u0j2i040S0s3A3C2f3E2X2,013J0W3e1D3g0C3i3k3m3o0(3T2|3V0E3x0E3#2W3D0 3)3H0^3,3.053:3=3P3@3S2.3U3v0D3x0D401w423F381P3I0d3c3-3L3;3N3?3R3_4f3{3v0R3x0R4l3343373*474v4b3Q3^3q4B3t3v0P3x0P4H4n444q464s3K3/3M3O4P4e3s3V0q3x0q4Y3%4J3G4#3+4%4u4)4w4+4d4A4.3v0V3x0V4?2Y4^4p2_4{4t484a4x4c4z4R530j0O3x0O583(4K455d4(494*4y4Q3`4T3u0e0}0!0e5q5a4L4|5f5x5i5z4S3V0!0!5E3z0g3B414@4o5J5e4N5h4,524g3u3X0!3!5V3$595Z5t4M4~4O515k5*0!3}045}5H5=4`5@5w4 5y4-5|4i5 4k5/5X2Y1G311v2?2$0l292+5t4Q2=1M1D300y323D6e1D4Q6v2v0T0l0^3m2X5Q3L6C6E5j5A6H0S2A0y6K5O5l5S2Z5W4!5c0b0}0N0T2T1t6x0S625c0d0}0U6)6+2l0|040z6x6;1}0f0T5E6_6X6=0}0p6:706{6}045.35750^6?734m3%6*7b016|0}4G7f6f7i7d745s4`7k5 5G7n6A5b71047e337h7s5c7u0s7w7a7F7A7C3D7E4_7G770R7J6w7p727r7Q2l7u5F7U3%6`7c7X7x7P7z760}7I7%7o7L1}6?0B6x0 7x5Z6J016F373V3X5w7 5`6M3v2i6O2r6R684C3W1=5/7|7K6B6D800K6G3v5~858m875P8q2j6P8d5)8f8r6d7i0Q0}0(0n6 7@0^0o3x8J7Z3I0n0}2S0b0l0$0K0f1e2q6$8O7.7*040X8$4L0}0Y0d130y0K8V0y8+5t7q7,7)3+8-8/2B0K0F0y0I0Y0y8@7}7W040w0L7{8+868o824h6I8t6L8v0j4i8b2B8z5{8f6a407i8M3Y0S9z8^4`0Y0l0}02030E0O0m9G9I9K9H9J1n0b0F0d6$0S0;9V0T0Y0#1`0(0.6#0M0c1t0S0v0S8T0l2S0S2J0$0I9.2p9:1`9W8Y0b8!974I9e9k8p0j4E4)9f6S5*4E9p6Q8naa8fa79v8K019D3x9z9V4s0Y1r9L9J1(0l9T0#9_8U9;8.8:9193951`0j0SaC908?at9N9MaN9d984K9fa54Va89kag5B4Vad9r880jaW3#ao7-8,049/0$7Y8%016-046/8{990z7`7,8j7VaTa49h0j4:aXa%9m4:a$af8e5Bb6a+ao8|6Z040W0K9/2Sa=3*a^a`7Dbi8~aD929496bp5ta^0jbA63bvaL1s6)b07(3)aUb455b7bc8A5B55bb8u5lbPbg9A7ibj0TbE6,6.b(3a0J0}2z9B5c6?8*aS8P466!6$9*1ub@a?6?0wb+1}bCc20^7#aR8k1fbN2f3V5nbQbW5*5nbV9l5lcebZa-5t8F040o1*1_c58}bkbm9`boa{aka^020h0#0mcv7u7=7y3*6?9ca a36Ka55F9jb86T5DcjaZ5Q5D6V9ya,b!akcqcs2ocvbj6#6%b}c9cM0}6^b~a.b%c`8_0}a~bt7icDcFcHcBb^cwblbna1b1d7cNc8dccab3cc3v5RcUbR9s5BdlcYbd5Q6Ucnc(bhb#0}c|d1cCb*d6a?b$cvc4dE3*c77xbK7?8lcRb45-dmcg8fdSdrbS5Q845/dwc)d7bja:b:2la^0kd+3I0}0W0N0N9`d/8(b?c?5?b`c;d_016?c_d|bF04dAdgc@040Bc1cPc`cb0b5Q8r3ga9dsdk3}dXdoeh8h3Bd$coe5d9czdb7g8|brc.d;cyaAey2Yeub)04bDdJd}04c:b|e0e2e0dGc}4`7_bJcQ8ncS9uejaYel3u9o8ydna(0!9ud#dxc*8S0)9@0beCa/9`a;dM6_0g6z6g6u6i6r1v0#6lf72)2!0W1^f40g6j1BcL5t2S0f0K0n0W0Q8;0C5~1n1p1r9+cO351I3E1C0x1fej0c0T0S0$fE0H0h4s2M0C2B0S0h0H0d1c1e0p0/150S1(2e0Iay2P9W2n2O9|3g1.9Z1`056zeP6(f13p3Y1rfH1tay270T0A1`f$f!0I9{0/2H9Y0Y2f0#d.fAfi0r2f0.0H003-fM0IfOfQ2Pa:0S2P9~a00S0F0$0S2p2b9@0YfX9Wf/9!gt9+9(b|0S0A0*2M0Sg0g29=fZ4sg70l0A0cg90?gcfX0)gt1e0c9VglfLfN1$fQ9Wf$3o9@0+ay9-f$0`9^8Vgt0A0J1cge1J6i0)0+0-04.