mathsbdp.fr algorithme PYTHON nombre premier Recopie le programme suivant sur eduPython
1. Que renvoie (10) ? (11) ?
2. Expliquer le rôle de cette fonction ( ).
3. Pourquoi traite-t-on le cas = 1 à part ?
4. Écrire un programme en PYTHON qui utilise la fonction précédente et qui renvoie le plus petit diviseur premier d’un entier naturel donné.
définition. Un nombre entier naturel est premier s’il possède exactement deux diviseurs distincts : 1 et lui-même.
2 est premier ; la seule décomposition possible de 2 est = ×
1 = 1 × 1 ; 1 possède un unique diviseur ( lui-même ) donc il n’est pas premier.
Liste des nombres premiers inférieurs à 100 :
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
Méthode : Déterminer si un nombre est premier ou non 391 est-il premier ?
Pour le vérifier, on teste la divisibilité par tous les nombres premiers inférieurs à
√391 ≈ 19,8, soit : 2, 3, 5, 7, 11, 13, 17 et 19.
Les critères de divisibilités connus permettent de vérifier facilement que 391 n'est pas divisible par 2, 3 et 5.
En vérifiant par calcul pour 7, 11, 13 et 17, on constate que 391 ÷17 = 23.
On en déduit que 391 n'est pas premier.
% renvoie le reste de la division entière de par . 7%3 renvoie 1
round(x) renvoie l’arrondi entier de n round(a,n) renvoie l’arrondi de à 10 . a**n renvoie
a !=b signifie ≠
La boucle Tant que s’écrit de la manière suivante while condition :
instructions
La boucle Pour s’écrit de la manière suivante Boucle avec un compteur k variant de a à b for k in range(a,b+1) :
instructions
Propriété : Tout entier naturel n strictement supérieur à 1 et non premier admet un diviseur premier p tel que ≤ √ .
Démonstration :
Soit E l'ensemble des diviseurs de n autre que 1 et n.
Cet ensemble est non vide car n n'est pas premier donc E admet un plus petit élément noté p.
p est premier car dans le cas contraire, p admettrait un diviseur autre que 1 et p.
Ce diviseur serait plus petit que p et diviserait également n ce qui contredit le fait que p est le plus petit élément de E.
On peut écrire que n = pq avec p < q car p est le plus petit élément de E.
Donc × < = et donc < √ . Remarque :
Pour savoir si un nombre n est premier ou non, la recherche de diviseurs peut s'arrêter au dernier entier premier inférieur à √ .