BTS−SIO:TD 14 Test de primalité 2015-2016
I Test de primalité
Il s’agit d’écrire un algorithme qui permet de préciser si un nombre entierN supérieur ou égal à 3 est premier ou non. Il faudra que l’algortihme précise un diviseur deN dans le cas oùN est impair non premier.
II Une correction
from math import*
N=int(input(" Nombre à tester : ")) racine=int(sqrt(N))
diviseur=3 if N%2==0 :
print(N," n’est pas premier car il est pair et différent de 2") else :
while diviseur<racine and N%diviseur !=0 : diviseur=diviseur+2
if diviseur>racine :
print(N,"est premier") else :
print(N,"n’est pas premier, il est divisible par",diviseur)
Une fonction possibleEstPremier(entier)est réalisable : def EstPremier(entier) :
racine=int(sqrt(entier)) diviseur=3
if N%2==0 : return False else :
while diviseur<racine and N%diviseur !=0 : diviseur=diviseur+2
if diviseur>racine : return True else :
return False
III Recherche des entiers premiers inférieurs ou égaux à un entier A fixé.
Écrire un programme qui permet de fabriquer et d’afficher une liste composée de tous les entiers premiers inférieurs ou égaux à un nombreAdonné. On peut également envisager de les dénombrer.
My Maths Space 1 sur 1