Comment verifié qu une donne saisi é numeric?

yannf -  
 jld -
bonjour!
dans le but d un programme en c, j aimerai verifier que l utilisateur a bien saisie une valeur numérique....comment puis je faire ???
merci d avance!!

2 réponses

  1. Marden Messages postés 1075 Statut Membre 210
     
    Au hasard de ce qu'on trouve sur la toile, mais c'est plus facile quand on sait à peu près qoui chercher :

    "Dans ctype.h, on trouve des fonctions utiles (limitées au caractères) :
    int isdigit(int c) rend un entier non nul si c'est un chiffre ('0' à '9'), 0 sinon.
    de même : isalpha (A à Z et a à z, mais pas les accents), isalnum (isalpha||isdigit), isascii (0 à 127), iscntrl (0 à 31), islower (minuscule), isupper, isspace (blanc, tab, return...), isxdigit (0 à 9,A à F,a à f)...
    int toupper(int c) rend A à Z si c est a à z, rend c sinon. Egalement tolower"

    Pour vérifier que la question n'a pas déjà été posée sur le forum, on peut utiliser la fonction de recherche de la rubrique "Effectuer une action", en utilisant, dans la mesure du possible, du français "normal" !!!
    1
    1. jld
       
      Ca dépend du language...

      En VB par exemple
      instr([start, ]string1, string2[, compare])
      retroune la position de l'occurence d'une chaîne dans une autre.
      donc pour un chiffre:

      c'est de l'alphanumérique donc entre guillemets
      valeur_a_tester = "9"
      pos = instr(0,"0123456789",valeur_a_tester)
      if pos > 0 ....
      pos est un entier
      0 = pas trouvé
      >0 = trouvé
      0
  2. Naoufal
     
    Salut !

    Tu peut tester si le code ascii de chaque caractére saisi est entre le code d'ascii de 0 "ASCII=48 "et 9 "ASCII=57"

    Bonne chance
    0