Afficher les nombres pair entre 1 et n en python
Résolu/Fermé
anass_4206
Messages postés
2
Date d'inscription
samedi 8 octobre 2022
Statut
Membre
Dernière intervention
8 octobre 2022
-
Modifié le 11 oct. 2022 à 16:36
mamiemando Messages postés 33307 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 octobre 2024 - 11 oct. 2022 à 16:36
mamiemando Messages postés 33307 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 octobre 2024 - 11 oct. 2022 à 16:36
A voir également:
- Nombre pair python
- Citizen code python - Accueil - Outils
- Nombre facile - Télécharger - Outils professionnels
- Fonction affichage des nombre pair ✓ - Forum PHP
- Le nombre de tentatives de déverrouillage incorrectes est trop élevé samsung ✓ - Forum Samsung
2 réponses
mamiemando
Messages postés
33307
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 octobre 2024
7 794
Modifié le 11 oct. 2022 à 16:36
Modifié le 11 oct. 2022 à 16:36
Bonjour,
Le test de la boucle while fait que la boucle ne se poursuit que si i est plus petit que n et si i est pair. Or comme i est incrémenté de 1 à chaque tour de boucle, le test s'invalide dès que n passe de 0 à 1. En réalité, il y a confusion entre le critère d'arrêt de la boucle et le critère d'affichage.
Le code devient correct si on écrit :
n = int(input("donner n ")) i = 0 while i < n: if i % 2 == 0: print(i) i = i + 1
Maintenant, il y a plusieurs choses qui sont très discutables :
- une boucle for serait bien plus adaptée
- il serait bien plus logique d'incrémenter i de 2 à chaque tour de boucle. Cela diviserait par deux le nombre de tours de boucle et éviterait d'avoir à tester la parité de i.
n = int(input("donner n ")) for i in range(0, n, 2): print(i)
Bonne chance
Whismeril
Messages postés
19148
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
8 octobre 2024
919
8 oct. 2022 à 16:18
8 oct. 2022 à 16:18
Et donc
- Pourquoi i = 0 au début ?
- Que se passe-t-il dans ton while quand i = 1 ?