Circonférence d'un cercle
Nombre à virgule flottante
En Python, c'est le point (.) qui est séparateur décimal.
Les nombres flottants (
float) sont stockés en binaire, et non en décimal.
- Des nombres de la forme \(\dfrac{n}{2^k}\) avec \(n\) et \(k\) entiers ont alors une représentation exacte en machine, mais pas les autres !
- Par exemple
0.5sera stocké de manière exacte !0.1ne sera pas stocké de manière exacte !
🐍 Console Python
>>> 0.5 + 0.5 == 1.0
True
Pas de tests d'égalité entre flottants
🐍 Console Python
>>> 0.1 + 0.2 == 0.3
False
- Aucun de ces trois nombres n'est stocké de manière exacte, mais avec un arrondi...
- L'addition conduit elle aussi à faire un arrondi...
- Après 4 arrondis, le test d'égalité peut se révéler faux (et parfois juste) !
Il ne faut pas faire de tests d'égalité entre flottants. (sauf si on sait exactement pourquoi)
Exercice
Coder une fonction circonférence de paramètre rayon qui renvoie le périmètre du cercle de rayon donné.
\[p = 2\pi r\]
On définira la constante
PI de valeur 3.1415926 dans le script, avant la fonction.
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
.9888.128013x/.ùr;nbOylaeêu)*dVM63m(P02-@,59fq!8 _o=pcwgv41kRIéhtsSàLCjDi:050t0o0$0n0.0m0%0M0R0m0n0%0%0P010$0.0Q010406050%0q0y0y0n0g0l040(0O0m0q130O0i0M020n0y0Q0h0M0Y0o1d0g0J0q0o0%050d1a1c1e1g180Q04051L1E1O0d1L180t0.0U0{0}0 110#0.0T0#0m1$0#0$16050?0j0m0o1X0~10011#1%1)1%0$1/1;1-0$0g1M0$0#1?1Z010I0^0o0i1r0o010{1j0%0Q0n0i110C1-2j2l271^2a1;2d0y2f040b0M0A0g0O0Q0O0%0.1m1o0;2h0g0g0o0R2J1E2q0i1M0d252V2224231.0t2s111)0i2c2G1-1U1W0|1@2)0.2+0i0O2/1-0Q2O1M2T2V30192k1o2;282_0g1d0m160W2S3417332r361^383a160C3e2l3g2T2(013l0n3b040x3p2U183s3j113v3x0V3A3r343t3G160G3J3C3L3E3u0O393w160w3J1P2~1E2/2Y0t242%3T0R2`2y0:1V1M2}0o2 3f3!3.0;3_3i1Y3k160A0Z3J0M3h3540110O160P45473t0y0I160x0e0W0V0W0G0H0C3Z1F3f064v4f3T0X160;0I3!3D49010S16464t3q4x4F0i4i040R0.0g3.4O0!2O0i0R0o4D3S4F15040z4#3 2=3u160g4+484-4(0r0/3Q0M4{464E4-0%2o04010+4S4U0I4W2c4Z0M0t000q350o4T1;5b1=0g0n0l1n0M0g014`4|4M4-4z042O0$0q0g0i4e4~280y0.3n5D4$4-4b040s5J4,3742444K2U4}5K285M5O5U045W5Q415x3Q1E3|3^3#5.0d3(1E0$3*5?2#2W0n1:5:3(1K3~4=282O0y0N0I0n0X0o0N0#0x161w1y1A1C0M4_5#1P3g1O0.0y0T0M3w0$110a2g3T0$0S1x0O0,5H0M0%4T1!1~0Q0%0/0d0d0R0t0i0e0,0%0;1)0U0g0e2+0$0d1%0d0,0;0R690t2W6A0y6C0.0E4o4l0e0B0d1@0=0%1F0U0T0d4r0n0B0e0%702g130$1;110/0S1e0i2@0T0/010d5$0*0n5p0!2F0i0%1=1C0$6F6p0Q1;0F0M1d0.0`0^0M671l0M0!0U0O6h0g0M5e0M2F2@0$6m1T1V3t0n0t6:7h2J7I0@1k2O161K7!7$1n2I0.1n0D7a20040A0~5b000!0T3w2I0!0M2c221=0I0m0O1~2l0$1D1R6n040-2l0`1;0`0$7w0`0Q0q1:0.0R0%7C2_0q0`0n7N7t7L0R0g2I7X3;2:4F1`1(1*1,613t2u2c2e162A0(8G147x0A0l251n3!3@61313`5-8R4y166|0g7W5#5%625)4R4T1n574X4Z4;3t4(4*6l5E1^5G160B933T4@5P8{4a4c4d8_5u5F5H049c5#3R5(115w8?8^308`3M168}56584Y4!975X1^959d4F9a043d9H9t019f9l989i040P9k9y9m994P0w0e0C0L0x0W0L0G3o9r5,3/2V8+3%3=600v0@0`4Z1~1=0y0!8(2L0Q0o7K0p886F0O5A5a5c5g2O5A8x0M7H2+7*7K2k0`674S1=2L8p0%8f7 81830$85872O7I8b8d0i8f0e8J5;9`8K7:7%7?5o1a0R4Z0 7.1NaP7=2J7_2I7{0k1oar7x7Sav7x2L2_0y0j2O8r2D0R0#1C8J2/3t8N1|1+2p9I118T2w2y8X8Z0Q8#8%0#8)6l9^326l8/9#9u4A0o4C9Q9h4G4I9L4-4O160%1n0$0N2}0Oa`a|bq941696329V4.040cbu284(0F9g9A040lbP9J164^5s4{bl015w5y5A5C9Ub43u0j8=0j8gbKb.9KbG3T0i16bOb-9R5M0DbTb{16bWb`4%bZc34F5M020m0$0hca4-9N0W9qb@c0160s0sc2c7ci9o0H3Q9sbr9v0 5g9x3f9zc404byaIbBa_a{b?3`bLb_cmbrb|4Q558 9E92csbQbIbX119NclcNb^bZbSb brc%c#9Sc99;bLcz7u8@ch5RcGbzcJbDcLc:cPc)9RcS9CcV919GcQbH4)c:cjd2c+c{9$3Y9)9+9-9/dg040r5+6O9?5/2V5 1N040u0O0^0)7Ram0j1nama2a40o7C8C2P0M0}0M0U3wa77Q5|by1k1=4*8/dW9=3}dr8h18aM0U8i0*6ia.9~0na`0!0`1a7Q9 860c5g4R5a1l0^7F0@87dP7p0I1n2Q7@1o058/cHbAbCbE8g8/0M0K8J1L0+0O1cat8l0M0$ac8m6i0od~4T8v6i0O0fakaI5g0U0.2c2^a/d:8qay821)aB86aIaE8a8c0?aI0%aKd*3%0=7+0%04.
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)