facile
Multiple
Soient \(a\) et \(b\) deux entiers positifs.
On dit que \(a\) est un multiple de \(b\) s'il existe un autre entier \(k\) tel que \(a =k \times b\) .
On demande d'écrire une fonction est_multiple
qui :
prend en paramètres deux entiers strictement positifs a
et b
;
renvoie True
si le premier est un multiple du second, False
dans le cas contraire.
Python propose une solution native détaillée ci-dessous pour répondre à cette question.
Solution native
Il suffit en effet de vérifier que le reste de la division euclidienne de \(a\) par \(b\) vaut \(0\) .
L'expression Python renvoyant le reste de la division de a
par b
est a % b
.
Une solution native serait donc :
🐍 Script Python def est_multiple ( a , b ):
return a % b == 0
Cette solution ne permet toutefois pas de répondre au cas \(b = 0\) (il est impossible de diviser par \(0\) ).
On propose de raisonner différemment. Pour ce faire, on gère immédiatement le cas \(b = 0\) en observant que le seul multiple de \(b = 0\) est \(a = 0\) . Ce cas particulier étant traité :
on crée une variable multiple
prenant initialement la valeur 0
;
tant que multiple
est strictement inférieur à a
, on ajoute b
à la valeur de multiple
;
en fin de boucle on teste l'égalité de multiple
et a
: s'ils sont égaux, a
est un multiple de b
. Sinon, a
n'est pas un multiple de b
.
Exemples
>>> est_multiple ( 0 , 0 )
True
>>> est_multiple ( 5 , 0 )
False
>>> est_multiple ( 10 , 2 )
True
>>> est_multiple ( 10 , 10 )
True
>>> est_multiple ( 2 , 10 )
False
>>> est_multiple ( 7 , 3 )
False
assert
?
Le mot clé assert
est utilisé en Python afin de vérifier que des propositions sont vraies.
Ainsi, l'instruction assert 3 + 5 * 7 == 38
permet de vérifier que l'expression 3 + 5 * 7
est bien évaluée à 38
.
Si c'est le cas, le programme continue de se dérouler normalement. Dans le cas contraire, le programme est interrompu et une erreur est signalée.
Version vide Version à trous
.128013bqêO,9vià3o_x;lpwTf( g06-)2s1+8ené4Em5tLRPhk:c.a=ryFSu/7d050)0G0N0W0i0p0C0v0U0p0W0C0C0X010N0i0q010406050C0$0L0L0W0Y0Z040#0l0p0$0}0l0H0v020W0L0q0o0v0P0G170Y0c0$0G0C050%1416181a120q04051F1y1I0%1F120)0i0h0=0@0_0{0R0i0w0R0p1W0R0N10050-0b0p0G1R0^0`011V1X1Z1X0N1)1+1%0N0Y1G0N0R0=1d0C0q0W0H0{0B011-1T010t0/0G0H1l0G1%23252a1/2d1+2g0L2i040a0v0Q0Y0l0q0l0C0i1g1i0+210Y0Y0G0U2D1y2k0H1G0%1 2P1|1~1}1(0)2m0{1Z0H2f2A1%1O1Q0?1.2Z0i2#0H0l2)1%0q2I1G2N2P2`13241i2+2b2:0Y170p100v0D2M2~112}2l301/3234360B39253b2N2Y013g0W35040v0k3k2O123n3e0{3q3s0v0J3w3m2~3o3C360M3G3y3I3A3p0l333r360y3N3c2 1S3f3S3h3t0(3X3z3!3B3$3U3t0F3*3P3,3R3T3D0g3=3d3@3K040D0x3|3Z2,3^3%0D381z3a3O3}453 0D3j4a3l4c44313.3s0D3v4i2O1J2^1y2)2S0)1~2X3Q0U2;2s0*1P1G2@0G2_3a3G054C0+4K4d2b0S100+0t4M3+450r364X3?4e0t101w0N0m0L0$0p0}0q1+4$4R1/0 040u4@4l3f100W4}3o4`0f3G0v3Y3J100b523Q4`0A0T3N0v5i574Y4S100i4W4r3t583Q0H5a565s3@0l100X0X5w5l1/0L0i10425q5x454`5g5q065j5R5k4%5m045o5D5U4 04515q5T4^0{5z045B5Y5)015G5I5c3@5N5h5S5`5L5V2I0N0$0Y0H5.4~0{0S0U100s0Y1v5_5{5E654*0:0G5?5M105O2`5Q5`6d5Z6f045~60625%5|1/66100!3r0C6i5P5R6y3B104.4:0~4?6x6e015+5C6P6r5:5H045J6n6H6Q4T040r1V6O2`5(643p6K4/4;6+3a6-3o5+024:0o63595#6j2b5^6G6p6I6/046L6=6F6,766S6~5t6:6M4=7b6@7d100E7f3~5v745i766%5X6U5/5u786;6N7k3l6^3Q6S6T7c6Q7z5$2|6Q736!756$106u617p456A04696b7s7F3@6%0G6h714_6l6c5S7u7T0,6v7W4S67046C7+5P1y4O4J4t810%4w1y0N4y862V2Q0W1*834w1E4Q6.2I0L0m0t0W0S0G0m0R0k101q1s1u1w0v6m4L1L3b1F0O0W0v0C1d1f0i1h0v0q0G1f0v0d1|1,3r0p0I0w0I0G0V1J8C040K1i0G0t0t0,0f0v0j0v0+0$0n0v2I2@0i6E0C8.8L8*8,2K1v0v0$1i0N4+0v0,0v0p008L2I0H0h0l0i1,4N4D3o1;1Y1!1$8h3o7Y7!7D4s0%803t2B0=7*0$0i0z0U0i990C0N0v0I0h3r0$0I8/57809n1!1?1#2j6V9u6a9w2P9z999L9l2F3Q9o9X9r7u7`7|6E4M9y4D9A000/9J9L9N9P9R8:9,1,9.9W9q9Z5/7Y9@9%7 9{8!8B8g0e1i8N8P0)1h0U8;0i2I2K1r2f9L9f9h0Z0G0Y9b1,0Y0I144:0W9L0)0$0v979K8y8#1N1P9V1=a99s3Q2o2f2h102u0#0U0Y0~9L0Q0Z1 1h4M4I8h2{4L9z7;044V7,0{4!5r5K7K4)044+4-7B7ja}014`4|b16V7Lb9547^5!5bbd5/5e8z4j6#9!5n5p7Jbe7rbu5/7Hbi0{5;6Ybg7.7$bqab7=5 7V7x6.bfbM6_5A7I7l6QbC6Z4bbHbN7h7abA6R5Ab$bV7/a`6)2eb$7z797Cb$6`6|b/50bE04bo3x6p7%4eb!b=bP7Gb(c47q7A7i6?7E7m047oc7c104bk7Q7t7S6t7?bLbxbZc9b#cg2bbzcu5!7M4baf4P822P8f4v0,0.0:04.
.128013bqêO,9vià3o_x;lpwTf( g06-)2s1+8ené4Em5tLRPhk:c.a=ryFSu/7d050)0G0N0W0i0p0C0v0U0p0W0C0C0X010N0i0q010406050C0$0L0L0W0Y0Z040#0l0p0$0}0l0H0v020W0L0q0o0v0P0G170Y0c0$0G0C050%1416181a120q04051F1y1I0%1F120)0i0h0=0@0_0{0R0i0w0R0p1W0R0N10050-0b0p0G1R0^0`011V1X1Z1X0N1)1+1%0N0Y1G0N0R0=1d0C0q0W0H0{0B011-1T010t0/0G0H1l0G1%23252a1/2d1+2g0L2i040a0v0Q0Y0l0q0l0C0i1g1i0+210Y0Y0G0U2D1y2k0H1G0%1 2P1|1~1}1(0)2m0{1Z0H2f2A1%1O1Q0?1.2Z0i2#0H0l2)1%0q2I1G2N2P2`13241i2+2b2:0Y170p100v0D2M2~112}2l301/3234360B39253b2N2Y013g0W35040v0k3k2O123n3e0{3q3s0v0J3w3m2~3o3C360M3G3y3I3A3p0l333r360y3N3c2 1S3f3S3h3t0(3X3z3!3B3$3U3t0F3*3P3,3R3T3D0g3=3d3@3K040D0x3|3Z2,3^3%0D381z3a3O3}453 0D3j4a3l4c44313.3s0D3v4i2O1J2^1y2)2S0)1~2X3Q0U2;2s0*1P1G2@0G2_3a3G054C0+4K4d2b0S100+0t4M3+450r364X3?4e0t101w0N0m0L0$0p0}0q1+4$4R1/0 040u4@4l3f100W4}3o4`0f3G0v3Y3J100b523Q4`0A0T3N0v5i574Y4S100i4W4r3t583Q0H5a565s3@0l100X0X5w5l1/0L0i10425q5x454`5g5q065j5R5k4%5m045o5D5U4 04515q5T4^0{5z045B5Y5)015G5I5c3@5N5h5S5`5L5V2I0N0$0Y0H5.4~0{0S0U100s0Y1v5_5{5E654*0:0G5?5M105O2`5Q5`6d5Z6f045~60625%5|1/66100!3r0C6i5P5R6y3B104.4:0~4?6x6e015+5C6P6r5:5H045J6n6H6Q4T040r1V6O2`5(643p6K4/4;6+3a6-3o5+024:0o63595#6j2b5^6G6p6I6/046L6=6F6,766S6~5t6:6M4=7b6@7d100E7f3~5v745i766%5X6U5/5u786;6N7k3l6^3Q6S6T7c6Q7z5$2|6Q736!756$106u617p456A04696b7s7F3@6%0G6h714_6l6c5S7u7T0,6v7W4S67046C7+5P1y4O4J4t810%4w1y0N4y862V2Q0W1*834w1E4Q6.2I0L0m0t0W0S0G0m0R0k101q1s1u1w0v6m4L1L3b1F0O0W0v0C1d1f0i1h0v0q0G1f0v0d1|1,3r0p0I0w0I0G0V1J8C040K1i0G0t0t0,0f0v0j0v0+0$0n0v2I2@0i6E0C8.8L8*8,2K1v0v0$1i0N4+0v0,0v0p008L2I0H0h0l0i1,4N4D3o1;1Y1!1$8h3o7Y7!7D4s0%803t2B0=7*0$0i0z0U0i990C0N0v0I0h3r0$0I8/57809n1!1?1#2j6V9u6a9w2P9z999L9l2F3Q9o9X9r7u7`7|6E4M9y4D9A000/9J9L9N9P9R8:9,1,9.9W9q9Z5/7Y9@9%7 9{8!8B8g0e1i8N8P0)1h0U8;0i2I2K1r2f9L9f9h0Z0G0Y9b1,0Y0I144:0W9L0)0$0v979K8y8#1N1P9V1=a99s3Q2o2f2h102u0#0U0Y0~9L0Q0Z1 1h4M4I8h2{4L9z7;044V7,0{4!5r5K7K4)044+4-7B7ja}014`4|b16V7Lb9547^5!5bbd5/5e8z4j6#9!5n5p7Jbe7rbu5/7Hbi0{5;6Ybg7.7$bqab7=5 7V7x6.bfbM6_5A7I7l6QbC6Z4bbHbN7h7abA6R5Ab$bV7/a`6)2eb$7z797Cb$6`6|b/50bE04bo3x6p7%4eb!b=bP7Gb(c47q7A7i6?7E7m047oc7c104bk7Q7t7S6t7?bLbxbZc9b#cg2bbzcu5!7M4baf4P822P8f4v0,0.0:04.
# Tests
(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)