Empêcher une fonction de tester une variable
Bonjour à tous,
Je suis en 1ère spé NSI et ma professeur nous a donné des exercices sur les tests et la spécification dans un fonction. L'objectif de l'exercice est de calculer la distance entre 2 points, de spécifier la fonction et d'afficher un message d'erreur du genre "Le nombre entré n'est pas valide etc". J'ai réussis le début (code + spécification)
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
from math import sqrt #On importe la fonction racine carré depuis le module math
def distance(x, y) : #On définie une fonction appelée distance et qui prend en compte les paramètre x et y
'''
Cette fonction calcule la distance d'un point de coordonnées x y à l'origine du repère
@param x : (int) abscisse du point
@param y : (int) ordonnée du point
@return distance : (int) distance entre le point entré et l'origine du repère
'''
if x and y != float : #On vérifie que les valeurs entrées sont des nombres
print("Le nombre entré n'est pas valide. Veuillez entrez un nombre entier ou decimal") #Si une des valeurs entrée n'est pas un nombre on affiche un message d'erreur
return
distance = sqrt(x**2 + y**2) #La distance entre 2 point se calcule par la formule sqrt(x2 - x1)**2 + (y2 - y1)**2)
#mais x2 et y2 sont égaux a zéro on a donc la formule sqrt(x**2 + y**2)
return distance #On renvoie la distance du point a l'origine |
Problème :
Quand j'entre par exemple distance(a,b) je veux que la fonction m'affiche le message d'erreur "personnalisé" mais a la place j'ai le message d'erreur classique qui me dit que la variable n'est pas définie. Es ce que vous savez si il y a moyen "d'empêcher" la fonction de tester si l'entré est une variable ou pas ?
Merci par avance de votre aide