L'Île mystérieuse

On s'intéresse dans cet exercice au roman « L'Île mystérieuse » de Jules Verne dont on a récupéré le texte, libre de droit, sur le Projet Gutenberg.

L'Île mystérieuse

L'objectif de cet exercice est d'effectuer quelques mesures et recherches sur le texte du roman et les mots présents.

Les différentes questions sont indépendantes et se succèdent de façon logique, ordre qui ne correspond pas nécessairement à la difficulté.

Dans tous les éditeurs ci-dessous, le fichier ile_mysterieuse.txt (téléchargeable ici) est déjà importé dans une longue chaîne de caractères nommée roman.

1. Premières mesures

Compléter l'éditeur ci-dessous afin de déterminer :

  • le nombre de caractères de roman. On comptera tous les caractères, lettres chiffres, ponctuation et sauts de lignes ;
  • le nombre de caractères 'z' présents dans roman ;
  • le nombre de sauts de lignes de roman. Dans le fichier ile_mysterieurse.txt, les sauts de lignes sont représentés par le caractère "\n".
Fonction, opérateur ou module interdit

Dans cet exercice on interdit d'utiliser :

  • str.count

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

.128013nimwgykP2o ]ualtb/sr[vcez3)fh1S=_dp(050I0y0q0o0c0p0t0l0x0p0o0t0t0G010q0c0J010406050t0n0d0d0o0u0g040F0k0p0n0#0k0b050s0,0.0:0=0*0J040~1505180s181a150*0I0c0w0T0V0X0Z0D0c0f0D0p1o0D0q0(050O0r0p0y1j0W0Y011n1p1r1p0q1x1z1v0q0r0k0I0=1w0u160q0D0T0^0t0J0o0b0Z0j011B1l010C0Q0y0b0o0d0y1v1Z1#1*1D1-1z1:1=0(0a0l0i0u0k0J0k0t0c0{0b0l0M1X0u0u0y0x2a0~1^0b160s1V2n0q1T1S1U0I1`0Z1r0b1/271v1g1i0U1C2x0c2z0b1P1h1v0J2g162l2n2R0+1!2b2F1+2K0u0/0p0(0E2k2V0)2U1_2X1D2Z2#0(0j2)1#2+2l2w012:0o2$040A2@2m172P0~2D2q0I2u2{0x1P1?163719352T0 2*053c0M2Q2V2{0b0(0b0r0H0x0:0o2i0y2g0t32040l2,2W1k1D0k0(0G3E3G2`2.0Z3u0(1}3E3H2{0%040K3W3Q3J3S0(240/0}3k2^3X3R013Z0B3E0*3%2G2|3t3v0z3O3:3(013L043N3.2m3P3q3;3T043V473p2-423Z0K0v3$4a423s040x403`1+0h0(0C0k0u4s4n3{4p4r4f494h3{0k0e0(2I4A4H2Y3*0k3,4N3I3{4v040c0C4T3r0(4E2R4G4U1+440G464(413{0t0E0(000z004m4O1D3Z0m3@4f3_4B4P043u0H0t0o0`0t0H0H0M0H1H2z3D4F4:4+3M4!4b0r3U1/4{4*4}0(4k5s4#4q5n424W4x4z5j4t2/4$5A4I4K4X3-4/5G3)043+1#5J4u4L4Z5F535H5z5Y4|0Z4,4.2*4)2{4=4@5x3;0t3e095N3l5P015.044`4f5k5u044 3^0~3n0y2n2O67361h382q2s2o1O1Q2q0o1y6a0s370*6n0N0P0R04.
2. Extraire les mots du texte

On cherche désormais à découper le contenu du roman en une liste de mots. Il s'agit donc de ne retenir que les sous-chaînes de roman composées exclusivement de lettres.

On fournit la chaîne LETTRES qui contient l'ensemble des lettres présentes dans le roman (en minuscules ou en majuscules, accentuées ou non).

Écrire la fonction extraire_mots qui prend en paramètre une chaîne de caractères texte et renvoie la liste des mots présents dans cette chaîne de caractères. L'ordre des éléments dans cette liste est identique à l'ordre des mots dans la chaîne passée en paramètre.

Exemples
>>>  extraire_mots("Hello World !")
['Hello', 'World']
>>>  extraire_mots("Hello !")
['Hello']
>>>  extraire_mots("Toto123 456 789")
["Toto"]
>>>  extraire_mots("bonnet blanc, blanc bonnet")
['bonnet', 'blanc', 'blanc', 'bonnet']

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

.128013ÊnFTÎmOwÇgÂPoCëç6]uRèaUH8bs[rvcez!JÉûj1WBSQ9À_dY(KLxZùiky02 V5àö+âMlI4t/Eô.G3)Afïh:Xæ=êé7DNpqî050V0G0`0w0%0@0B0,0F0@0w0B0B19010`0%1f010406050B0t0g0g0w0D0)040Q0n0@0t1y0n0c050{1F1H1J1L1D1f041U1#051(0{1(1*1#1D0V0%0E1q1s1u1w150%0k150@1{150`1B051l0A0@0G1?1t1v011`1|1~1|0`2426220`0A0n0V1L230D1$0`151q1O0B1f0w0c1w0+01281^01131n0G0c0w0g0G222w2y2D2a2G262J2L1B0a0,0m0D0n1f0n0B0%1R0c0,1j2u0D0D0G0F2*1U2O0c1$0{2s2`0`2q2p2r0V2Q1w1~0c2I2%221:1=1r29340%360c2m1;221f2:1$2^2`3o1E2x2+3c2E3h0D1I0@1B0,0N2@3s1C3r2P3u2a3w3y3A0+3D2y3F2^33013K0w3z040,103O2_1D3R3I1w3U3W0,0_3!3Q3s3S3*3A0.3.3$3:3(3T0n3x3V3A0r3^3G3t1@3J3}3L3X1c423%453)473 3X0z4b3`4d3|3~3+0S4j3H4l3=040N0*4q443d4m480N3C1V3E3_4r4z4t0N3N4E3P4G4y3v4f3W0N3Z4M3#433;4R1B0N3-4V3/4H4Q4n4!3@4%1%3m1U3a2}0V313S0F2m2M1$4=1)4:3q4.4`1j3n4k4I1B0Z0|0e0e0u0|0Q3.0,4X3{0n1B195g5i4l0B2B0401120P0o1d0|0d0 0y0^0J0Y0Z0?1e0h0m0R0u0Q0e0x0-0O170W0#0w0A0F1j131|0%0M0(0@0g3h1f1g0D0B0`0t0E0i0!0)0H0T0l0j0K0b0f0/0=180q0v1b1a0p1h140}0:0$0L013^064O3S0(1B5X3.5o4z0i3A6k4c4I131B0G0!2~1m2:0U0g0n0`0B6p562E1A040X6E4)3J1B0`6u6O6K4P2a6H11163^0,6Y5h6q3v1B2:1F0@1l0`5n6#2a5k045m4%6!6F6T1B0C0s6X6Z6l6$042I0U4`0t5,6-6^1w6:6=3o6@6L1w5q1B016c4%066Z7d6S1w6h04133}777e3T1B0F1J0w2=0G2:7u7o010n6n043f7E3;6N6P0G6R3S6H6W7k7m7m6 2a7q0%137L3{0c7x7z7B7D6?7X797I7K7-6.3)585a5c5e7Q3{7S6}7V7V7.7w710c730n756D7=787G1B0;7b3E7n7M047y0D7A6O7,3o7l808h3{7q0G1~7#8a7v7(8486887$4l6:0I8f3P8s5p5r7i7|4l7~7U8r7W7?836(0t6*0w6,4.8U6:0~8O57040w1f1f2I0V8)6G1B6J8#8b8A7274768^7v6U7 8S8K8*8{878}7c827a8E4z7g5s7j8p8T8b7Z8x988U8`858|899l8b8G8I2_932E9d8N8~7F8Q9g8r828A8W8Y8!3q8$1B8(9A8i8,8.0c8:9O7}8?8;6M8B9p9X1w908R6Y827q2:5.0D1T8y7F9G0G6)6+420{530G2`3l9|4;1;4?2}2 2{2l2n2}5U262`4=1D0{1j1l1n0B04.

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

.128013ÊnFTÎmOwÇgÂPoCëç6]uRèaUH8bs[rvcez!JÉûj1WBSQ9À_dY(KLxZùiky02 V5àö+âMlI4t/Eô.G3)Afïh:Xæ=êé7DNpqî050V0G0`0w0%0@0B0,0F0@0w0B0B19010`0%1f010406050B0t0g0g0w0D0)040Q0n0@0t1y0n0c050{1F1H1J1L1D1f041U1#051(0{1(1*1#1D0V0%0E1q1s1u1w150%0k150@1{150`1B051l0A0@0G1?1t1v011`1|1~1|0`2426220`0A0n0V1L230D1$0`151q1O0B1f0w0c1w0+01281^01131n0G0c0w0g0G222w2y2D2a2G262J2L1B0a0,0m0D0n1f0n0B0%1R0c0,1j2u0D0D0G0F2*1U2O0c1$0{2s2`0`2q2p2r0V2Q1w1~0c2I2%221:1=1r29340%360c2m1;221f2:1$2^2`3o1E2x2+3c2E3h0D1I0@1B0,0N2@3s1C3r2P3u2a3w3y3A0+3D2y3F2^33013K0w3z040,103O2_1D3R3I1w3U3W0,0_3!3Q3s3S3*3A0.3.3$3:3(3T0n3x3V3A0r3^3G3t1@3J3}3L3X1c423%453)473 3X0z4b3`4d3|3~3+0S4j3H4l3=040N0*4q443d4m480N3C1V3E3_4r4z4t0N3N4E3P4G4y3v4f3W0N3Z4M3#433;4R1B0N3-4V3/4H4Q4n4!3@4%1%3m1U3a2}0V313S0F2m2M1$4=1)4:3q4.4`1j3n4k4I1B0Z0|0e0e0u0|0Q3.0,4X3{0n1B195g5i4l0B2B0401120P0o1d0|0d0 0y0^0J0Y0Z0?1e0h0m0R0u0Q0e0x0-0O170W0#0w0A0F1j131|0%0M0(0@0g3h1f1g0D0B0`0t0E0i0!0)0H0T0l0j0K0b0f0/0=180q0v1b1a0p1h140}0:0$0L013^064O3S0(1B5X3.5o4z0i3A6k4c4I131B0G0!2~1m2:0U0g0n0`0B6p562E1A040X6E4)3J1B0`6u6O6K4P2a6H11163^0,6Y5h6q3v1B2:1F0@1l0`5n6#2a5k045m4%6!6F6T1B0C0s6X6Z6l6$042I0U4`0t5,6-6^1w6:6=3o6@6L1w5q1B016c4%066Z7d6S1w6h04133}777e3T1B0F1J0w2=0G2:7u7o010n6n043f7E3;6N6P0G6R3S6H6W7k7m7m6 2a7q0%137L3{0c7x7z7B7D6?7X797I7K7-6.3)585a5c5e7Q3{7S6}7V7V7.7w710c730n756D7=787G1B0;7b3E7n7M047y0D7A6O7,3o7l808h3{7q0G1~7#8a7v7(8486887$4l6:0I8f3P8s5p5r7i7|4l7~7U8r7W7?836(0t6*0w6,4.8U6:0~8O57040w1f1f2I0V8)6G1B6J8#8b8A7274768^7v6U7 8S8K8*8{878}7c827a8E4z7g5s7j8p8T8b7Z8x988U8`858|899l8b8G8I2_932E9d8N8~7F8Q9g8r828A8W8Y8!3q8$1B8(9A8i8,8.0c8:9O7}8?8;6M8B9p9X1w908R6Y827q2:5.0D1T8y7F9G0G6)6+420{530G2`3l9|4;1;4?2}2 2{2l2n2}5U262`4=1D0{1j1l1n0B04.

Dans les prochaines questions, la liste mots qui contient l'ensemble des mots du roman dans leur ordre d'apparition est toujours accessible.

Certains mots sont donc répétés dans cette liste. Par exemple, ses 11 premiers éléments sont ['Jules', 'Verne', 'L', 'ÎLE', 'MYSTÉRIEUSE', 'PARTIE', 'LES', 'NAUFRAGÉS', 'DE', 'L', 'AIR'] : le « mot » 'L' apparaît déjà deux fois.

3. Mot le plus long

On se demande quel est le mot le plus long du roman ?

Écrire un script permettant de répondre à cette question. À l'issue de votre script, la variable plus_long devra contenir ce mot le plus long.

On garantit qu'il n'y a pas de match nul : le mot le plus long est le seul à avoir ce nombre de lettres.

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

.128013nimwgykP2;o ual4t/sbrvce3)fh:1S=_dp(050I0y0r0o0c0p0t0m0x0p0o0t0t0G010r0c0J010406050t0n0d0d0o0v0g040F0l0p0n0#0l0b050s0,0.0:0=0*0J040~1505180s181a150*0I0c0w0T0V0X0Z0C0c0f0C0p1o0C0r0(050O0u0p0y1j0W0Y011n1p1r1p0r1x1z1v0r0u0l0I0=1w0v160r0C0T0^0t0J0o0b0Z0j011B1l010B0Q0y0b0o0d0y1v1Z1#1*1D1-1z1:1=0(0a0m0i0v0l0J0l0t0c0{0b0m0M1X0v0v0y0x2a0~1^0b160s1V2n0r1T1S1U0I1`0Z1r0b1/271v1g1i0U1C2x0c2z0b1P1h1v0J2g162l2n2R0+1!2b2F1+2K0v0/0p0(0E2k2V0)2U1_2X1D2Z2#0(0j2)1#2+2l2w012:0o2$040z2@2m0*2`2.0Z2}2 0q322n2O0y2n2D2q0I2u2{0x1P1?163g192P2,2m3b053l0M2Q2V2{0b0(0J0_0t0H0p0|0f3b0m3s2{0l0(0G3K3M36010t1(0401013b343z3T0h0(0B0l0v3R351k2/0(0d3-3$3/0Z0l0e0(2I3?2-3^2|3;0l0r0t3u3.2G010%040D3!0m4e3L471+3(040c0B3~2W400b0u0(1}463@484a0K4u3 483B043=0 2*3S404a0A4n3N0(020f0r0k4L3T4q4s1/4z4o4w0(4y4F2^4H4B3C3E3G3I4X2{4J4c4$334f4@4g4v2Y4*0n3F3H0b3J4=044_4A1+3O043Q52544Y4{4D3!0~3w3e173r0s3p2o3i0~2r2q1O1Q2q0o1y5i5l1h2+5l0N0P0R04.
4. Longueur moyenne des mots

Écrire un script calculant la longueur moyenne des mots du roman. À l'issue de votre script, la variable moyenne devra contenir cette valeur.

La comparaison de nombres flottants étant problématique, le test de vérification de cet exercice s'assurera que le résultat proposé et la valeur attendue sont proches à \(10^{-6}\) près.

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

.128013nimwgyk02Po 56+ual4t/sbrvce3)fh:1S=7dp(050L0B0u0r0c0s0w0m0A0s0r0w0w0J010u0c0M010406050w0q0d0d0r0y0g040I0l0s0q0(0l0b050v0/0;0?0^0-0M041118051b0v1b1d180-0L0c0z0W0Y0!0$0F0c0f0F0s1r0F0u0+050R0x0s0B1m0Z0#011q1s1u1s0u1A1C1y0u0x0l0L0^1z0y190u0F0W0{0w0M0r0b0$0j011E1o010E0T0B0b0r0d0B1y1$1(1-1G1:1C1?1^0+0a0m0k0y0l0M0l0w0c0~0b0m0P1!0y0y0B0A2d111{0b190v1Y2q0u1W1V1X0L1}0$1u0b1=2a1y1j1l0X1F2A0c2C0b1S1k1y0M2j192o2q2U0.1%2e2I1.2N0y0=0s0+0H2n2Y0,2X1|2!1G2$2(0+0j2,1(2.2o2z012?0r2)040C2`2p0-2}2;0$30320t352|2Y2~3b0+0n3e373g392 0l2%310+0o3l2/2Z1n2=3q2@040K3e1a2S112G2t0L2x2~0A1S1_193I1c3G2W122-053N0P2T3n3y3a0+0d0l0g1=2C3e0m3w2~0l0+0J3.3:3o0d0c0+0i3v383$2 0+0w0l0;0B3^402J013=043@3V2{3/491.3{3}3l3m2:410h0+0E3q483#4a0b3(4u4o4a0l0e0+2L4z3x4w3(0l0u0w3E4i1G0*040G3l0m4U4h4v2#43451^4G3;0+0p4e2U4W4A2#0x0+204N4X4P0+0N4=4-2=4y4f2p3_414Q0D4m504I043)3+0b3-4~044,4H1.4c4*2-5e3h4Z464$3o4c0v5o410b4/044;5c551.4Q4_5y4O3%574K4M5D4?0$523v0v3Y0B2q2R5Q3H1k3J2t2v2r1R1T2t0r1B5T0v3I0-5*0Q0S0U04.
5. Nombre d'apparitions de chaque mot

Écrire un script construisant un dictionnaire associant à chacun des mots du roman son nombre d'apparitions.

Par exemple, si le roman se limitait à "le chat et le chien", le dictionnaire attendu serait {'le': 2, 'chat': 1, 'et': 1, 'chien': 1}.

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

.128013nimwgyk02Po 5}+]ual4t/sbr[vce3fh{:1S=dp050M0D0v0s0c0t0x0m0C0t0s0x0x0L010v0c0N010406050x0r0d0d0s0z0g040K0l0t0r0(0l0b050w0/0;0?0^0-0N041118051b0w1b1d180-0M0c0B0W0Y0!0$0G0c0f0G0t1r0G0v0+050R0y0t0D1m0Z0#011q1s1u1s0v1A1C1y0v0y0l0M0^1z0z190v0G0W0{0x0N0s0b0$0j011E1o010F0T0D0b0s0d0D1y1$1(1-1G1:1C1?1^0+0a0m0k0z0l0N0l0x0c0~0b0m0P1!0z0z0D0C2d111{0b190w1Y2q0v1W1V1X0M1}0$1u0b1=2a1y1j1l0X1F2A0c2C0b1S1k1y0N2j192o2q2U0.1%2e2I1.2N0z0=0t0+0J2n2Y0,2X1|2!1G2$2(0+0j2,1(2.2o2z012?0s2)040E2`2p0-2}2;0$30320u352|2Y2~3b0+0n3e1a2S112G2t0M2x2~0C1S1_193p1c3n2W122-053u0P2T3g392 0+0s0N1%0z2c0c0 0x3e0m2/2Z1n1G0l0+0L3U3W2~0*040H0o3e373I3Y0$0h0+0F0l0z3%383;3K040d3{3:2J010l0e0+2L412:3}0b0+0d0l0v3T3C2{3(3J3*0I3.0m4p3V3|433?040c0F493X434c3 4y2~450+2N0v4D3J4F4v104i2p4r422#3L3N0?3Q3S3l4s1.4m4o4q4%4k4b4T3O4W0b4h2W4Z1G3*0A4Y4R2=4d4^4a433*0q4J3}3!043$4O044Q4}1.0d0c0+0i4$4p4)4A4+4V2d4/3D4;0$4?4|4z4S4C565h4!0+5056585s3Z0+0p552U5B2~5b2*3.113F0D2q2R5P3o1k3q2t2v2r1R1T2t0s1B5S0w3p0-5)0Q0S0U04.

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

.128013nimwgyk02Po 5}+]ual4t/sbr[vce3fh{:1S=dp050M0D0v0s0c0t0x0m0C0t0s0x0x0L010v0c0N010406050x0r0d0d0s0z0g040K0l0t0r0(0l0b050w0/0;0?0^0-0N041118051b0w1b1d180-0M0c0B0W0Y0!0$0G0c0f0G0t1r0G0v0+050R0y0t0D1m0Z0#011q1s1u1s0v1A1C1y0v0y0l0M0^1z0z190v0G0W0{0x0N0s0b0$0j011E1o010F0T0D0b0s0d0D1y1$1(1-1G1:1C1?1^0+0a0m0k0z0l0N0l0x0c0~0b0m0P1!0z0z0D0C2d111{0b190w1Y2q0v1W1V1X0M1}0$1u0b1=2a1y1j1l0X1F2A0c2C0b1S1k1y0N2j192o2q2U0.1%2e2I1.2N0z0=0t0+0J2n2Y0,2X1|2!1G2$2(0+0j2,1(2.2o2z012?0s2)040E2`2p0-2}2;0$30320u352|2Y2~3b0+0n3e1a2S112G2t0M2x2~0C1S1_193p1c3n2W122-053u0P2T3g392 0+0s0N1%0z2c0c0 0x3e0m2/2Z1n1G0l0+0L3U3W2~0*040H0o3e373I3Y0$0h0+0F0l0z3%383;3K040d3{3:2J010l0e0+2L412:3}0b0+0d0l0v3T3C2{3(3J3*0I3.0m4p3V3|433?040c0F493X434c3 4y2~450+2N0v4D3J4F4v104i2p4r422#3L3N0?3Q3S3l4s1.4m4o4q4%4k4b4T3O4W0b4h2W4Z1G3*0A4Y4R2=4d4^4a433*0q4J3}3!043$4O044Q4}1.0d0c0+0i4$4p4)4A4+4V2d4/3D4;0$4?4|4z4S4C565h4!0+5056585s3Z0+0p552U5B2~5b2*3.113F0D2q2R5P3o1k3q2t2v2r1R1T2t0s1B5S0w3p0-5)0Q0S0U04.
6. Mot le plus courant

Écrire un script recherchant le mot comptant strictement plus de 6 lettres le plus courant du roman.

Le dictionnaire apparitions établi à la question précédente est déjà chargé en mémoire.

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

.128013nimwOgyk02P;o, 56]uRal4t/sbr[vce.3)fh:1S=é_dqp(050S0G0y0v0c0w0A0p0F0w0v0A0A0P010y0c0U010406050A0t0d0d0v0C0h040O0n0w0t0:0n0b0p020v0d0U0m0p0u0G0}0C0T0t0G0A050z0`0|0~100^0U041o1v051y0z1y1A1v0^0S0c0E0(0*0,0.0L0c0g0L0w1O0L0y0?050Z0B0w0G1J0+0-011N1P1R1P0y1X1Z1V0y0B0n0S101W0C1w0y0L0(130A0U0v0b0.0k011#1L010K0#0G0b1b0G1V2022271%2a1Z2d0d2f040a0p0l0C0n0U0n0A0c16180X1~0C0C0G0F2A1o2h0b1w0z1|2M0y1`1_1{0S2j0.1R0b2c2x1V1G1I0)1$2W0c2Y0b1?1H1V0U2F1w2K2M2@0_21182(282-0C0}0w0?0N2J2{0@2`2i2}1%2 310?0k3522372K2V013c0v32040I3g2L0^3j3a0.3m3o0x3r3i2{3k3x0?0q3A3t3C3v3l0n303n0?0r3A1x2=1o2$2P0S2T3k0F1?2p0W1H1w2;0G2?363R3!0X3,391K3b0?0U140A0R3!0t0C220y3A0p382|3?0.0n0?0P42443k0A250401013H4c3K0b0?0b0B0R0v0U210C2z0c171n1p36433u460148044a4z3h4B3J4D0d0c0?0j4j4C2)010i0?0K3M4b4S2~0?0d0n414I2L4K3=4T0n0e0?2+4Z4L4T4m044r4t4v4x3R4!1%0=040M3H0p564,454T4V040c0K4?4-2~0B0?2m4 4@28520V5l5g3@044%4)2_500.520J5f59284F020g0y0m5B3k4N3P5J3K4/0?220S5N4D4_4{0~4}0b4y5w5m510?0D5q5C5s5u5*3k520s5T4.0?5F5H5=4#044o4q4s5X2A5!3-5x0152544*0@576a583D3^3`3|0n3~405`1%4F4H2@6c4l4$4(556b564k5U4n4p5W4u616k47496D3l5Q5 6B4w5Z5.3K525)686w4^6r5v635$5y0?5;680^0z3/3+3S6)0z3V1o0y3X6.2R2N1=1@2P0v1Y6+3V1u3;5+0.2F0d0R0K0v0i0G0R0L0I0?1g1i1k1m0p672_1B371v0f180U0G150p0v0t0,0c0p150#0c0A0G0C0p0*0p0d0Q1|3#436(3k1)1Q1S1U6 3D5i041G2H6N4D4F0H7Y6T5c0y1h623h1o6(047h1x372$7N1S1+1T2:3T7j2_7.6S5{3_7u6g6i0b6V4J806l6F686p4D4e0?4h4R6X6H5|6z6J5Y7+4+896E4G6G5L044Q6#8r4U4W4Y8c8z4_5-6R64520o6G5V4s6G5P5c0b8L6I4|6C8H8j7!7$5{2z7*8Z5%040V0J7i36066a8z5b5d8L7U5k8W5r6Y8)8%3w6U8}650?5A8D645E5G5I948j8v3Q998`4E4:4`0b5S9d708k4{8O5@978S8l5~8U6L8p7S6O0?8,3h8.6u8d7%823{3}3 869o8t9k6d5t6s6#9D9E5{5}6A8o9L6n4A8E8T4j6%3#2M3*2M6}3U0Y0!0$04.