Difficulté **
important
pile
Filtre sur pile
Cet exercice utilise des piles qui seront représentées par des listes Python.
Si pile
est une pile, alors pile == []
indique si la pile est vide, pile.pop()
retire
et renvoie le sommet de la pile et pile.append(v)
ajoute la valeur v
au sommet de la
pile.
Si on considère qu’une fonction manipule une pile, elle ne peut pas utiliser d’autres opérations que celles décrites ci-dessus.
On cherche Ă Ă©crire une fonction positifs
qui prend une pile de nombres entiers en
paramètre et qui renvoie une nouvelle pile contenant les entiers positifs de la pile initiale,
dans le mĂŞme ordre, quitte Ă modifier la pile initiale.
Pour cela, on va Ă©galement Ă©crire une fonction renverse
qui prend une pile en paramètre
et qui renvoie une nouvelle pile contenant les mêmes éléments que la pile initiale, mais
dans l’ordre inverse. Cette fonction sera également amenée à modifier la pile passée en
paramètre.
Exemples
Python Console Session >>> renverse ([ 1 , 2 , 3 , 4 , 5 ])
[5, 4, 3, 2, 1]
>>> positifs ([ - 1 , 0 , 5 , - 3 , 4 , - 6 , 10 , 9 , - 8 ])
[0, 5, 4, 10, 9]
>>> positifs ([ - 2 ])
[]
Compléter le script ci-dessous
Compléter le code Python des fonctions renverse
et positifs
ci-après
.128013l(9 _4:;=vm26!-uS8w.s3C/]fr7gebh[pPicé05qa,onkêyd1)t050X0E0!0Q0K0b0v0e0L0b0Q0v0v0j010!0K0I010406050v0q0l0l0Q0B0W040r0S0b0q0^0S0T050y0 1113150}0I04051l1e1o0y1l0}0X0K0k0-0/0;0?0/0T0D0q0Q0D0E0p0I0W0!0G1c0e0G0K0D0G0b1Q0G0!0{050(0F0b0E1x0:0=011P1R1T1R0!1Z1#1X0!0B1m1L0-180v0I0Q0T0?0m011%1z010A0*0E0T0Q0l0E1X1|1~231)261#292b0{0a0e0J0B0S0I0S0v0K1b0T0e0$1`0B0B0E0L2w1e2e0T1m0y1L2J1?1^1@1Y0X2g1A0K0T282t1X1u1w0.1(2T2V0T0S2Z1X0I2C1m2H2J2:0~1}2x2#242)0B120b1X0Q1O2C0A0?030f0f0L2*0E1T2(0S0p0Y3e0{0e0Y1e0Q2;2@0|2?2f2_1)2{2}2 310E33013537393b2W3e0p21040e0m3k3m1~3o2H2S013t0Q2~1m300G323436380$3D2)3F0w3h0w3L2G3n0}3P3r0?3S3U053W3Y3z3!3C2U3E3f0g3h0g3-1f3/3p2^1y3s0S2|3T3v3X3x3Z3B3$3 3(3f0O3h0O452:3:2@3Q3@4f3{3A3#3a4l3d3f0n3h0n4r473;4a3?4c3u3V3w3y4z3~3c3F0C3h0C4I3N4t3q4L3R4N4e4P4g4R3}4k4U3f0s3h0s4Z2I4#492$4(4d3^3`4h3|4j4B4:0p0d3h0d4^3O4u3=4}4O3_4Q4i4A3%4D3e0N0{0Y0N5a4`4v4)4 5h525j4C3F0Y0Y5o3j0y3l3.4!485t4~4x514S4/403e3H0Y3K5F3M4_5J5d4w4+4y4.545Q0Y3*045*5r5Y4%5!5g4,5i4T5)425,445V5H5X4K4|5;504-535k5A4o5,4q5}465I602`5u5M645y550Y4F5,4H6b4s5/616g5#5N5%663f0Y4W5,4Y6p4J5c5:6t5=5$655z6y4=5,4@6D6d6F6s5L6u6i5^4m3e575,596Q2I1p2.1e2Z2M0X1^2R5d4A2Y1v1m2-0E2/3n5~1m4A6{2f0K0X0?362H5A3v72746K6k222k0E7a6j5)1X5}6e1)0U0{0$0A6}6r240t3h7r7l3?0A0{2C0T0k0E0B0v0E7w6S240`040c7I4$610{0I277O4{7K0{0Z0h6}0}6c6(3P7901752@3F3H5g7)6w6L3G7d2a7f7*7b5Q7.7k7J1)7u3I0e837U3Q0v0X0{02030w0d0i8a8c8e8b8d7B0k0S0K1$0q2V0e7S1#1`0T0!281~0!0e1#0,0l0V2b0,0M0b0M2b8v0,0P0q1$8s0E0R7!857:0f763f5+7/737`7h6Y3*0e7e7g6X5l8Z7~7P24873h830e120K0,0X1~0,0b8f8d4c0X2C0e2U7D7F0E0u8T7$702x8V8X0p5`8!8,5P6Y428*7^9l5(9n7j5G7x018?82830x0%8w0e0A1c2E0K1N0X0M1?0q2v8r270u918h8g9S9c2=7(8#7+1~3F689k8$8-9$7@2b9r6x0p9%5V8^0e7s3s7R270f977E7G6}9@9w0S0{0ja09^0?7L0H0za07#9X4u9g7,4E789Z7{6Y4F9p9-9)9m5l6m3L9?a7017n040t1P1#a69w0T9`aC9da17 0?a3040oa5aIawa90z7Z9dad6|9Y7a9h6A9(7;554Wao7_a%5Qa#9=9?8^awaF048Q9|7C9~7H9dawaM9ba}aE0{0Q0I0I280X855d7L7Nb1aK3RaGa|ae8;1)a b95:7R2rbm4|bb0Z0Zac8Uak9h6Na$al5l4=a*9.7=bza/849way2C0!0q0B1daQb2a@9{9}99bvbd71bxah56ajbF5557bEaq9s5l6!3LaW3N5Jag9#6y5n4P8V8%5l5p9,a+bB5Ab`b:bwaZb#5Bb%b,9/c9b+a,6Yc92J9vbeay7pbq7t7vbY7V3s7za@2t2v0K0A0vcn1)bbcA3?bgcD017L7Y9WaXafb!b^5Rcacfb~21cec26y7}cjbj0?81avcq8688049Sc+8i0i8k8m8o8q8Q8u8w298v8A0E8G8I8K0!0,2s2u0^cy2y8P278SaVc67`9h5*cQcV3e8)8+cb7=deci9ec(8@838}0T8 1$8D2b0e932C0u0e9B1/1$9F0T9H9J9L0B9N8z8Q9Rc-c,8gcKb=aYdcc89j30b|9*6y9odjcR5A9jbIaJcZbfbT1#0fd2cwcyaDbeaMaP2:d-cra80{aabXbi9fcN0T67dfb}e8cUea6y9;3lavbK0{aA7TbRbea?8Qd_d.aMaOeqd cHe1aTdT7%cMc7cO6le9d#3eand(dgeEdna:a;bS3a0!eu3Qd{eS5ZcFc%5dbleYbncu0IcGbse3cLbZeCe76ya#dZaked3ea)eJe@6z9u9za:awaycxeVe$eQf34|aM020D0!0id|3nd~3Q0l0K0{5qe#br0{aUd}b;eAe-dWeDbze=b(5)bDe`eG0YbHegeNe bSa^d?d4czfl24e!e44vb3b5b7e)0{bcfPeW04f5fMcB7Xezdob@e/6ZeFar5Ab*fAf.6yb/d,f07A0%bObQd}a=f`a`bWf#e07McGeo9{fJcxfLfX4%cIf(1e6 6)6`6+6@1e0!6.gm2P2K0Q1!gj0y6,7#0$0(0*0v04.
# Tests
(insensible Ă la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)