File avec deux piles
On choisit d'implémenter une file à l'aide d'un couple [p1, p2] où p1 et p2 sont des piles. Ainsi file[0] et file[1] sont respectivement les piles p1 et p2.
Défiler une valeur
Pour défiler file, deux cas se présentent :
Interface des piles
La structure de pile est utilisable au travers de leur interface constituée des fonctions suivantes :
creer_pile_vide: renvoie une pile vide.depiler: prend en paramètre unepileet renvoie le sommet qui est dépilé.empiler: prend unelementquelconque et unepileet renvoie une nouvelle pile oùelementest le sommet.est_pile_vide: prend en paramètre unepileet renvoie True si la pile est vide.
🐍 Console Python
>>> ma_pile = creer_pile_vide()
>>> est_pile_vide(ma_pile)
True
>>> empiler(ma_pile, 5)
>>> empiler(ma_pile, 4)
>>> depiler(ma_pile)
4
A partir des opérations sur les piles fournis dans le module, écrire en Python les fonctions suivantes :
- une fonction
creer_file_vide()qui renvoie unefilevide de tout élément. - une fonction
est_file_vide(file)qui prend en argument unefileet qui renvoieTruesi lafileest vide,Falsesinon. - une fonction
enfiler(file, valeur)qui prend en arguments unefileet un élémentvaleuret qui ajoutevaleuren queue de lafile. - une fonction
defiler(file)qui prend en argument unefileet qui renvoie l'élément en tête de lafileen le retirant.
Exemple
🐍 Console Python
>>> ma_file = creer_file_vide()
>>> est_file_vide(ma_file)
True
>>> enfiler(ma_file, 1)
>>> enfiler(ma_file, 2)
>>> est_file_vide(ma_file)
False
>>> defiler(ma_file)
1
>>> defiler(ma_file)
2
Contraintes
On doit utiliser exclusivement les fonctions fournies.
Aucune connaissance de la manière dont sont stockées les valeurs de la pile n'est nécessaire.
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.8217ê_Ce,l8:ynb0Duik(2c[7aûm.j%S)r9 15s/éO?-LxR]T6gào+t=hd3PEfvp;wAQ4q050%0f0!0x0q0h0K0H0u0h0x0K0K0#010!0q0-010406050K0p0z0z0x0F0k040D0Y0h0p170Y0l0H020x0z0-0.0H0S0f1h0F0?0p0f0K050L1e1g1i1k1c0-041I1P051S0L1S1U1P1c0%0q0,0 1113150$0q0W0$0h1,0$0!1a050`0m0h0f1%1214011+1-1/1-0!1^1`1?0!0m0Y0%1k1@0F1Q0!0$0 1n0K0-0x0l150t011|1)010+0|0f0l1v0f1?2k2m2r1~2u1`2x0z2z040a0H0)0F0Y0-0Y0K0q1q1s0^2i0F0F0f0u2U1I2B0l1Q0L2g2*0!2e2d2f0%2D151/0l2w2R1?1!1$101}2@0q2_0l2a1#1?0-2Z1Q2(2*3b1d2l1s2 2s340F1h0h1a0H0I2%3f1b3e2C3h1~3j3l3n0t3q2m3s2(2?013x0x3m040H0(3B2)1c3E3v153H3J0H0=3N3D3f3F3T3n0J3X3P3Z3R3G0Y3k3I3n0V3(3t3g1(3w3-3y3K0w3=3Q3^3S3`3/3K0i3~3*403,3.3U0G463u483#040I0n4d3@30493{0I3p1J3r3)4e4m4g0I3A4r3C4t4l3i423J0I3M4z3O3?3!4E1a0I3W4I3Y4u4D4a4N3%4Q4B4L4U4h3;4X4K3+4w3}4%3 4v4M4h454,474.4!0I4c4=4S3_4!0t4j4{4C4}3{0t4q3b4Y4)4/0t4y574(4f5a4H3d1V391I2}2-0%2;3F0u2a2J0@1#1Q380f3a3r3X055r0^5z4|150r1a0^0+5B4-2s0/3n5M4?3i0+1a0u2Z0f0F0d2F0f0d0,0q0^5R5G0119040s0E0j4k3F5P3K0H5`5+52150K0%1a00621A0l0,0Y0q1{0p2_0H5#0H5(0^62003(5`5{5N1~5I042Z0!0p0F0l3X0H5e4m5.0v5|3!5V5X5Z0-2v5%5)0f6B3+5.5:0g6v6x3i6D0f5Y0d6G1`6I5*4Q6R1~6N0E0T3(58486o5K6L485^6w6#6m3S5U041G0!5!6H6f6K6@5S6%1a0s6:4v1a5#772s5.5;5?3+6=6k7b1~5 61632w66680H0U0F1F0H2S0H116c2v0H6|6e6J6h6j7i6^016o6q6s6u4Q6w7I0l1a6|6W6 6J7j156N7X3G792v7!6z7!0z0q1a503d7I5.0T0E6Q7I0Y5^2m0%7@733S7S0K6}6X5$707(757!7R047a725,7)8c5}017+4N86047=6+6$5H5J0f5L8f5@5Q8t4)6`2w5#0F8k768w4f7$1`8k6P7O8o7#040,3I0f6s8k7e518u5_5{8E4m7l046h0:0B0Y1p1{0h000M0h0M2I0l0!6e8P6s0H0X7x0x7z1`7F4X6k7P7~8M1B838B8Y7c87993w8G717/948e9g5,8i047.5A7:1a0T8J3b935,898O1`8R9c7Y1a7?4X6,4m6.8r7!6=886`5K2v989j8g7Z9A8M8b9Q3F7d5=8U7g3n7i9T8!905d7I8!920o0M6d6a0H8.8:2w8?2W7y9V4s8L9-6k647p1{0u0_9?8/8;0!7f48a05`9*4s928L6o0q8s9t8L897T836Z9f9o9h9b9W4)9e8k6A9T9l56at8d9q8T5792ah7I6o0/1+8H8K7^5^34aaaQ94ao817U6Y859T9Saw8F8a7%a$1aaAa(4m9l9n3C8L7;aHagaJa{an1a9x8Q9P3r9u8g0Y1a0#6vb36C040^978C88aya,04a.aE8ga;8k8m91a{aJa}6{1w9Obe9T899}a?9pbi7*7,4hbn9sb2bsa 9za/9a049D5706aK947K0_7M7}9v8qbdbh8DbM9da*aPb%9BbCaBbEaDbAau8lbP9~0L5D5y1R5k0L5m1I0!5oc02/2+292b2-0x1_b{b~5v1O5F8g2Z0z5!0x0r5$0$0(1a1A1C1E1G0H9Z5i1Y1T040o2m0~a58?0f0R5Y0u0qa50g0H1r0H1p0|0q0K696b817t2#6s1{2W830H0%1r8?1`0~2P0M0F0x2U0~0%00962va97B9`cZ0M83c_cS6cc(8`2i0y8?5r0l812m8?8L1i2T0$1h0!cF1a090s0N0s0I0E09b@3C0A1R3s1P0;0pc?1s6|0P0|c$8+8}cV0pcX2ZdE8~a41r812T0p0McZdT0p0R0H830~0Odu1c0p0h3s1/dv040Q00c,c.2Uc$6icV1r0W6{0l5#a92%2.d^3Kd72S811{8{c@1`0F7x8-a89_c$cB8|dX7Ac=9_0FdS0A0H0e0_dhcM0-c-c/0qcNd00+0{9`1r0ud35rd52id80`8=dt1V3s0Ld*1cePcy0Q3-0K1E009=cSd%a79^8=7v1{d 0p0,cZef9|2vcL8,d/evcN2W1dd 0ld_0%9:c^9_d~2Oe|3K2Z5(ed8{el3IcR5Y0Hd cReseuc:cuc$c}9Oea9@c_9{8}c#ej8=el0fe;c?bue8eed8egft1{0K3-171{0-0pfg1`fl97dLcDer0z0c2Ieh1`enep0~ffc+etd:ewfDeyd20u0$0x0u6ae5d4d6dOeJcEeB0leDe=f(e@2Vc|d|ed7C0M0W8Pc_8{eFf^eIdaeLcxeO0qeNd%d+058}3+0W221;290R2q0%c/0x0P0!0k0-0f150q1h0W2zee0`0P0/5)2g150x1pb5gJgy0$0f1:0!gPgR2q0$2Z0+gEgG1G0L2I0|9y5Z0u120A0K0,0Wgvgx0P0^0K0u0P2Q2S2U1529240Y0z1?gF0W0H3IgY01e~8A2q0K0F0ug)0xgH0Kg,gW0hg/0dg;0Kg?g^2qgM0%gO010=0n0C1?0L0x2*cx1PcAfDfO6GdKg}0 12cL2Q8_hgfnhPch68e9fp9_c;0bf=dMd3dc0Fdedgdi04dk0ldq6vh(8=0~0xe,f~cth/h;c/h?h^h`7Oh|0!c;ef5C5s040-4qb`04cLcN8}i32gh=guh@0s0th_dr2)fhf)dOdX8)e9e~fQf.0xcse#fq1{ie5Eih1Iijc`7x0be7fd1ee9iM5y0-4yijhVfM0~h,e?d;2WiEf08=cLfH2Tb93+ddipi5irdkiu0Z0Ii89ti+f*0~0j7xdNeG7Cc%f}7x320M0{2Zgggmgo48gqgXgtg`gKgAgChmgHjpgyhAhCgQ0!gSgwgKgVgXgZjAg#g%jtg+hQ2!g=g@g_gTg|1Gg h12Tf*h40Yh6h81Qhahc0hhehYe8hihkjKhpjMhvhxjQjx0$15hEhG2*hJd#cy0*1sf62mf.fxj70~ia0~1e1#da0~0l00gQf38?0m1G671siIc=h,eZfOj3cNhWe90c2.g30|0Mhwj 1Sjk4mjm23jojRjrgD01gFhngIjCjwgNj_01jzjBg{jE23jGgSg$8rj/1V0q2Zhv0tj?jvjSg~h02RjW1rjYj!h90zhbhd15j+5Yj-hlkNg*j:k+jN0Kk.jPhzkTj`hFhHj~eMce0:322ScLgwhOfKl8dEcChUiBhXe fB1sk9c$h+6b6d8{lAech}il1sin7Ii_dfi{djitiv6vktfDkvfPfniGiIiadLiYigiiifiR0hiTfAiV8_l(i!iPifi%fgi*g0i,c|c~edlXl!7uialoeCcO1sjA0`0hl%lNh:i`dhi|0s0(lT7OlVhw0Hk10H0z0Y0k2w6bfOl1fqlDiJedgccZm6iolPmglRmj0L2n0(j1b2mmjice0Qj88?gq0Y0m3I7B81eHd9i:cM1s2l0FfOcJ0qmce{d_gchcmr0F17f2e0mQ5l0_0{0}04.
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)