Comment vérifier si la valeur rentrée dans un champ est un entier positif ?

Jacques 2 réponses
Bonjour j'aimerais vérifier si la valeur rentrée dans un champ est un entier positif, comment je peux faire ?
0
{0} / {1} caractères recommandés
La réponse doit contenir au moins un caractère
Réponses
Romain Bourcier
Supposons que X est la valeur entrée dans le champs. Pour savoir si il est positif on fait : if(X>=0) { // la valeur est positif } et pour savoir si il est entier il faut : déclarer une valeur entière égale à X; ( Cette valeur ne gardera que la partie entière). int Y = X; Ensuite on multiplie valeur de x et y selon la précision maximum que le champs peut accueillir; // Exemple 2 chiffre max après la virgule cela donne if(X*100 == Y * 100) { // X Est entier } Pour savoir si un nombre dans un champs est en entier positif on fait donc : int Y = X; if(X>=0 && X*100 == Y * 100) { // la valeur est positif et c'est un entier; } Si il y a quelque chose qui te pose question dit le moi :)
Ecrire une réponse
0
Stéphane Tsacas
Attention aux multiplications de ce type : on a vite fait d'avoir un dépassement (overflow).
Ecrire une réponse
0
Emmanuel Orchanian
Professeur(e) vérifié(e)
Bonjour, il faut vérifier deux choses : que c'est entier, et qu'il est positif. Pour vérifier que c'est un entier il existe beaucoup de fonctions dans les langages : is_int(PARAMETRE) en PHP, Number.isInteger(PARAMETRE) en javaScript.   En espérant vous avoir été utile. Emmanuel Orchanian, professeur en développement & design.
Ecrire une réponse
0