Proche voisin
On souhaite programmer une fonction donnant le point d'une liste de points le plus proche d'un point de départ. Les points sont tous à coordonnées entières. Les points sont donnés sous la forme d'un tuple de deux entiers qui sont leurs coordonnées (dans un repère orthonormé). La liste des points à traiter est donc un tableau de tuples.
On rappelle que la distance entre deux points du plan de coordonnées \((x; y)\) et \((x'; y')\) est donnée par la formule :
\(d=\sqrt{(x-x')^2+(y-y')^2}\)
On importe pour cela la fonction racine carrée (sqrt
) du module math
de Python.
Exemples
Compléter le code des fonctions distance
et proche_voisin
fournies ci-dessous pour qu’elles répondent à leurs spécifications.
Attention
Il est interdit d'utiliser min
Compléter le code ci-dessous
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.9888.127797.65039St6oêgdq8cp;5éb7L1C.T)0_DEl+]i(sr y:e=xh*3ûkuvw9,àmfR/42nIèa[P-A050k0O0f0/0H0E0J0L0n0E0/0J0J0P010f0H0o010406050J0W0$0$0/0K0M040e0h0E0W170h0,0L020/0$0o0p0L0(0O1h0K0l0W0O0J050)1e1g1i1k1c0o04051P1I1S0)1P1c0k0H0X0 111315110,0j0W0/0j0O0=0o0M0f0R1r0L0R0H0j0R0E1{0R0f1a050`0s0E0O1#1214011`1|1~1|0f2426220f0K1Q1?0 1n0J0o0/0,150+01281%010%0|0O0,1v0O222q2s2x2a2A262D0$2F040a0L0;0K0h0o0h0J0H1q1s0^2o0K0K0O0n2!1I2H0,1Q0)1?2:2k2m2l230k2J1(0H0,2C2X221Y1!10292}2 0,0h33220o2)1Q2.2:3g1d2r1s352y390K1h0E220/1_2)0%15030B0B0n3a0O1~380h0=0v3H1a0L0v1I0/3h3k1b3j2I3m2a3o3q3s3u0O3w013y3A3C3E303H0=2v040L0+3N3P2s3R2.2|013W0/3r1Q3t0R3v3x3z3B0^3*393,0T3K0T3=2-3Q1c3_3U153|3~0540423$443)2~3+3I0*3K0*4d1J4f3S3l1$3V0h3p3}3Y413!433(464s483I0q3K0q4y3g4g3k3`4k4I4o3%453D4O3G3I0g3K0g4U4A4h4D4j4F3X3 3Z3#4$4r3F3,0t3K0t4/3@4W3T4=3{4@4H4_4J4{4q4N4~3I0m3K0m532/554C36584G4l4n4K4p4M4(5g0=0Z3K0Z5l3^4X4i5q4^4m4`4L4%474*3H0A1a0v0A5D5n4Y595s5K5v5M4)3,0v0v5R3M0)3O4e544B5W5r4!5u4|5f4t3H3.0v3;5,3?5m5:5G4Z5b4#5e5x5`0v4a046a5U6257645J5c5L4}694v6c4x5 5.614;5p6h5t5d5w5N5%4R6c4T6q4z3@1T3e1I332?0k2m2{5G4%321Z1Q3d0O3f3Q6r1Q4%6W2I0H0k153z2.5%3Y6%6)6y5$3I5)0L2N0O6/5#5y5)2:5-6t2y0V0,1a0%2U0$6Y6f5p0Y3K78703V73041h1?7d5F577b3/7k565p721a0H1w4F0f6Y0L793n1a0J0l0K7x6F2/0L7J7J7A2a0n6}030L7u2W7F0L2$110L0%1r2+0H1^0K0/0n4s0 1i0K0r0O6Y1c7H6#1s6.016*3k3,3.5J7_676z3I2v6@2E6`6l4P3-225 7=3i3_800B6+3I6b7 6(7`6:5y4a852O875_898k6q7e150V1a0^0%7p5o2y7n7z7?7M4j0%8B0H0J0`0,0n7:8J8y0119040I8E4Y1a2W2~0f0B5+8e7l5p8X0!7y8K3{8$0h8(0B5~8,7q2y8X0z0N7;8!8g8i0=6n8l8t68894v8r6_8n6{5`978x8-8G3K7K8!5G0J0k1a021E0h0f0p9t0W9v9x9u9w0L0w3}0n0W260L0_0L2)0,0X8^277X1Y8P2s8S9K0,2k270^0W0Q0L8%9Y0J0x1t9C9B9z9w9y9A928U4X947|4Q6-8m816;0=4R9d9982a18b3O7K7z8V8A042)0f0W0K0,8;8V7g7D7F9o578X0I8Z9^8}3V8@8_8+6X8V8X0:ao5p0$0H1a5Tat8F2a8X0Gaj9k2a0h1a0=aOau4jaw9Y8`aD8~1aaCaJ3`aFaHa!aL1a0G0za,15aR040S0Sa;01a*048{3QaaaPa=1a0FaUaK15aqa`7g9)8)ay6GaAa$a`a|bd2/8=aMb53`a?aT7?b0aV8?04bbaZa(5GaBbhaG6ca`aMa:by57a?a^bB1aa~beb18W1abG4V939~8h9{0=4,4_8g9g894,a39f885ObZ3=8daz9_bV9550b!bVb$5O50b)9 5yb@4dab8B3!a`8Hb98Mbv2U0n0R0O0B9P8O2~bE1aas8|b6bu24ci048:br8=7g0^2ranbH8.bR917?b/bO6$b=bX5ib^a4a05ib}8o5`cIc1bP8H9ncy2y9q9s9.9=9;9.1z2Ccf9R27bb7V0W0L2h0O0/c.240L0J272k0h0W0X2s0f0L0#0L7X0o1o0~3Bag0f9!8O8Q9W0kc.c,cv1i0f0xc!9/9Adm9@cl7RcG2s3,5AcJb*8u5O5AcNb`dva73/9nakaX7G3gbscma?0Pbn631acocVa-04a%dr5Ga|aIdYapa.dqb:cF6/955S9}cK6|5QdCb+5%5Q6~dG7LdI7h2~0B9TdKa 8=dOdQ6g8N9U8R8Td$cz8Yb9dJcpcrdLctc3cwe2cEcm8 d)eodsd,bX5(d/dy9a5Oewd?dz5%6}3=a98=ac7Z0Ke66u7teM2y0h7nchcsak0s1a7(1*ebe3bfeedU15bieheP3VeW042Mcpckd*cm7gdTeca#040z90erbk8fdt0,5%7~3tb#d@6=846^d:697~5 a9eHc2040H8DeUbPcudc9Ve!esbzcjef04e_e?3`bAe(bu0Hcp0Geie#fneldjcpbSfHbta?020E9we,aWd~0,e0dccpcBbTa(9`du6=8kf6b_f83H8qfbeya56adFfgf^dM8#bv8^9YfT01e5fmbte^0/0scpdXfydRfjfEe 7@et8nd-97f+fc890v9cf:b~6mf@f_fhfIfVfX8Pf g1ejd}e1fqe;fvfxfsd%dWfvfDfBaMfG3@f`gadicxe`dVfM5/f$f26Aexgpgla2gocOg%grd|bPacaeagaig2e@egcC780)6!6H6V6J6S1I0f6Mh12_2;g5262:6K1Oge5G2)0$0B0%0/0Vcd0R6b1A1C1E1G0Lf!6X1V3R333`0/0k0$1r2Z7$2#2s1.0K1a1OhxhzhB2!0=170f2i040?2g2C2,huhb0b0d0caac{1*040-0E7Yc=d0g50J1n1fhV0L0r0X2Z0O0K7V273B1w1ih{h}9$7Y0E9v8Q0f0~hV2)9K9$0x2-h%0j2:1W0@1ZhKhA0,hC1^0O0Q1vd52PhJ5Ghyioiqf3hPhR0D0Q1Biv1Thvim5G1)1+1-1/1;3B1s2c1}1 21hc572L2C2E1a0;1=1@1s0w1rh:9J0e1G2Y1r786U7@606Z3Cgef%f30+3Jdxg$3Gj06?g)dDj52w6j5!d@j9d`8=0j8X020j9;jk9xjm8IgUe)c80A0xbj7o8Va?b4g?a)js0xbN7Ie49sjmf 0$jC4cg_gYeuduj0f5gfj33-8aeCezjV84jb5^jYjRdFjga?0y0K1Fgd5:i~jVf*jTg*j40=f/86f;5$j08qj#jUj j)8VjhjHjlk81ybhjCjvgQbIb3jJjCjE3RjOgg7|j0gij@j8962wj7jdks5Zj$6zkok4bP0ja?jt0T0AkHkIkJkK6pf#3ig{i|g}h96S7=ha1R040C2sd79Lish{7*9W26d70h4F0k1r0,7/0~0^0~bb0~h:9Yc^0W0o2W0Jk;9X170.2)0J0!0L1h8Od3h~9G9Ih}7Vfpea0L0/0X2*d33t7(7*2 7,2(7/7Vk/9!hq0%i62gc l60L1E0H0L9Pk{0i9Z2oi07.0~d20k00h-l56@0h0$0sl5ifhXkW0;c|h|2klk0{0E26h|lklmk?l20Hh{lD0|ljag0{d0hhl-c.h cwi2k*lslOh}k=lh8SlDl:0nh@h_0^1gh?l=k^lf3Bk-k/l1hV0Hl41G9,0uhqgCea0~0ri8m8lVlXlUk hC0%lD9J3d0h250.2Ol{7(2Z9(0U0LlKiclOh;lj2~2Yl!ik0)kVm*0_l,0J04.
# Tests
(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)