Bonjour,
Je dois réaliser un programme permettant de lister la suite de Fibonacci selon un élément maximum "n".
Voici ce que j'ai réalisé sous Python 3.7, Windows 10 :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| F = []
b = False
while b is False:
try:
n = int(input("Pour la valeur maximum de la suite de Fibonacci\nEntrez un entier supérieur à 1 : "))
[F.append(0) for i in range(n)]
F[0] = F[1] = 1
for i in range(n-2):
F[i+2] = F[i] + F[i+1]
print(F)
b = True
except IndexError:
print("Ce n'est pas un entier supérieur à 1 !")
except ValueError:
print("Ce n'est pas un chiffre !")
print("Programme terminé !") |
Lorsque je fais des tests, tout fonctionne correctement sauf que quand j'entre "1", je valide, il me marque l'exception que "ce n'est pas un entier supérieur à 1" puis j'entre un autre chiffre, et ça me rajoute un "0" à la fin de la liste.
Citation:
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 5
[1, 1, 2, 3, 5]
Programme terminé !
Citation:
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 1
Ce n'est pas un entier supérieur à 1 !
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 5
[1, 1, 2, 3, 5, 0]
Programme terminé !
Par contre, l'erreur ne survient pas lorsque j'entre autre chose que "1".
Citation:
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : g
Ce n'est pas un chiffre !
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 5
[1, 1, 2, 3, 5]
Programme terminé !
Citation:
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 0
Ce n'est pas un entier supérieur à 1 !
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 5
[1, 1, 2, 3, 5]
Programme terminé !
Citation:
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : -5
Ce n'est pas un entier supérieur à 1 !
Pour la valeur maximum de la suite de Fibonacci
Entrez un entier supérieur à 1 : 5
[1, 1, 2, 3, 5]
Programme terminé !
Je n'arrive pas à corriger cette erreur.
Merci de votre aide.
Doky.