je comprends le programme de base mais je ne sais pas comment le simplifier, pouvez vous m'aider svp. merci d'avance ^^​

Je Comprends Le Programme De Base Mais Je Ne Sais Pas Comment Le Simplifier Pouvez Vous Maider Svp Merci Davance class=

Sagot :

Bonjour,

Déjà au niveau du "except Valuerror:" c'est mal écrit, c'est "except ValueError:".

Cela permettra déjà que le programme fonctionne quand tu entres tout ce qui n'est pas un entier.

Ensuite, il faut lever une exception quand l'utilisateur entre un entier qui n'est pas compris entre 50 et 100.

On peut utiliser le mot clé "raise":

if ...:

   print("Votre nombre est...")

   break

else:

   raise ValueError #On lève nous même l'exception ValueError.

On peut très bien aussi lever d'autres exceptions (AssertionError,...) pour indiquer un message différent à chaque problème.

On peut donc avoir un code du type:

from math import *

def MonCalcul(x):

   A = x * 4 / 5

   return A

while 1:

   try:

       MaValeur = int(input("Entrez un nombre compris entre 50 et 100: "))

       if MaValeur >= 50 and MaValeur <= 100:

           print("Votre nombre est: ", MaValeur)

           break

       else:

           raise ValueError #On lève l'exception ValueError nous même.

   except ValueError:

       print("Erreur de saisie")

a = MonCalcul(MaValeur)

a = round(a, 2)

print("Premier calcul", a)

for i in range(10):

   a = MonCalcul(a)

   a = round(a, 2)

   print("Calcul numéro:", i+1, "= ", a)

Bonne journée.