Algorithme nombre premier
Xelopante
-
Xelopante -
Xelopante -
Bonjour,
Je suis en train de faire un TP en python qui demande de créer un script avec une fonction, qui demande de rentrer un chiffre et de dire si il est premier ou non.
Voici ce que j'ai écrit :
J'ai l'impression que ça fonctionne globalement sauf lors de la vérification à la fin qui retourne forcément que le chiffre est premier car le booléen prems revient toujours sur la valeur True.
Quelqu'un aurait une idée pour corriger ça ?
Merci d'avance
Je suis en train de faire un TP en python qui demande de créer un script avec une fonction, qui demande de rentrer un chiffre et de dire si il est premier ou non.
Voici ce que j'ai écrit :
prems = True
def EsTuPremier(nombre, prems):
i = 2
while((i<nombre) and (nombre % i != 0)) :
i = i+1
if(i==nombre) :
prems = True
else :
prems = False
return prems
nombre = int(input("Choisissez un nombre"))
if (nombre == 1):
print("Le nombre est premier")
else:
EsTuPremier(nombre, prems)
if (prems == True):
print("Le nombre est premier")
else:
print("Le nombre n'est pas premier")
J'ai l'impression que ça fonctionne globalement sauf lors de la vérification à la fin qui retourne forcément que le chiffre est premier car le booléen prems revient toujours sur la valeur True.
Quelqu'un aurait une idée pour corriger ça ?
Merci d'avance
A voir également:
- Nombre premier python
- Citizen code python avis - Accueil - Outils
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Gto nombre episode ✓ - Forum Cinéma / Télé
- Mot secret python pix ✓ - Forum Python
2 réponses
Bonjour,
Voir la portée des variables : https://www.pierre-giraud.com/python-apprendre-programmer-cours/portee-variable/
Voir la portée des variables : https://www.pierre-giraud.com/python-apprendre-programmer-cours/portee-variable/
Bonsoir,
La variable prems est totalement inutile.
La variable prems est totalement inutile.
def EsTuPremier(nombre):
i = 2
while((i<nombre) and (nombre % i != 0)) :
i = i+1
return i== nombre
nombre = int(input("Choisissez un nombre"))
if (nombre == 1):
print("Le nombre est premier")
else:
if EsTuPremier(nombre):
print("Le nombre est premier")
else:
print("Le nombre n'est pas premier")