70 Fonctions en Python
et nombre premier
a. La fonction premier ci-dessous écrite en Python
permet de déterminer si un nombre entier est pre-
"expliqne lignes por lignes
mier ou
non.
from math import
def premier (n):
reponse True
r=int (sqrt (n))
for p in range (2,r+1):
if n%p==0:
reponse=False
return reponse
*
Quelles sont les valeurs possibles de la variable
réponse ?
b. On exécute le script
contenant la fonction pre-
mier ci-dessus, et dans la
console on obtient :
Que signifient ces résultats?
c. Que renvoie la fonction
premier lorsque n est pre-
mier ?
Que renvoie-t-elle si n n'est pas premier ?
d. À la suite de la fonction premier du script
Python ci-dessus, on souhaite définir une fonc-
tion premiersup qui prend comme argument un
entier naturel n et qui renvoie le premier nombre
premier supérieur ou égal à n. Compléter cette
fonction premiersup :
from math import/*
def premier (n):
reponse=True
r-int(sqrt(n))
return reponse
def premiersup(n):
for p in range (2,r+1):
if n%p==0:
reponse=False
n=n+1
return n
Console Python
>>> premier (4)
False
>>> premier (100)
False
e. On exécute le script
contenant les fonc-
tions précédentes et en
console:
Que signifient ces
résultats?
>>> premier (139)
True
while premier (n)==
>>> premier (17)
True
:
f. Wa
nais
sièc
>>>
11
Console Python
>>> premiersup (100)
101
>>> premiersup (16)
17
premiersup (11)
71
1.0
nor
de
Co
qu
to
en