Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Générateur de nombres premiers
Tu as peut-être déjà écrit une fonction qui renvoie la liste des nombres premiers. Avec un générateur, on peut faire mieux : au lieu de tout calculer d'un coup, on produit les premiers un par un.
Rappel : un nombre est premier s'il n'est divisible que par 1 et lui-même. Pour vérifier, on teste les diviseurs de 2 jusqu'à la racine carrée du nombre.
Écris un générateur premiers_jusqua(limite) qui produit tous les nombres premiers de 2 jusqu'à limite incluse.
def premiers_jusqua(limite):
for num in range(2, limite + 1):
est_premier = True
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
est_premier = False
break
if est_premier:
yield num