IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

faire contrôle de saisie


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2008
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 208
    Par défaut faire contrôle de saisie
    salut,



    je veux faire un control de saisie en language c

    voila un petit programe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #include<stdio.h>
    void main()
    {
    int code;
     
    printf("donner le code ");
    scanf("%d",&d);
     
    getch();
    }
    commet faire pour que les valeur saisie n'accepte que les chiffres et n'accepte pas plus de 7 chiffres

    est ce que possible de faire un fonction de control de saisie et en main fait juste l'appel

    merci d'avance

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 487
    Par défaut
    Il n'y a rien de standard en C, à ma connaissance, pour empêcher l'utilisateur de saisir plus de 7 caractères. Par contre, tu peux demander à scanf() de ne lire que les sept premiers caractères et d'ignorer les suivants :

    Sinon, tu peux effectivement faire une fonction qui lise les caractères un par un, se charge de les afficher ou non, et fasse la conversion elle-même. Ce n'est pas très compliqué, et le thème des conversions de base a été longuement débattu ici (fais une recherche), mais ce n'est pas forcément à la portée immédiate d'un débutant…

  3. #3
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    salut.

    en algorithmique ,pour faire telle chose ,il faut utiliser une boucle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    répeter
     
    ecrire("donner une valeur")
    lire(valeur)
     
    jusqu'a (valeur >=0) ET (valeur <= 9999999)

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2008
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 208
    Par défaut
    personne ne rencontre ce genre de probleme

    j'ai une idee mais je n'arrive pas a realiser une fonction complete

    je suppose qu'on dois convertir le code qui est "entier" en "chaine de caractere" et tester le saisie caractere par caractere

    avec la fonction inverse de atoi qui est je pense stratoi

    cette fontion qui ce charge de controle de saisie(n'accepte que les chiffre(

    de 0 à 9) et aussi n'accepte pas plus de 7 chiffre)

    et apres si le saisie respecte le regle de control de saisie reconvertir cette

    chaine de caractere (je parle de code ) en entier avec la fonction atoi


    est ce que qu'elqu'un pouvez m'aidez meme me donnez juste une idee pour pouvoir continuer

    merci d'avance

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 127
    Par défaut
    Salut
    premièrement pour savoir si un caractère est un chiffre tu peut utiliser la méthode isdigit() pour que ça ne dépasse pas 7 tu peut calculer le nombre de caractères ou calculer la longueur de la chaine entrée .
    tu peut utilisée la librairie<string.h>
    bonne chance

  6. #6
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    commet faire pour que les valeur saisie n'accepte que les chiffres et n'accepte pas plus de 7 chiffres
    Tu n'est pas assez précis sur ce que tu veux :

    - Qu'est ce que tu veux que ça fasse si

    * L'entrée comporte plus de 7 chiffres.
    ** On ignore les derniers (par exemple "123456789" -> 1234567). Que fait-on du reste de la ligne : on l'ignore ou on la garde pour la suite ?
    ** la ligne est entièrement invalidée ?
    ** ...?

    * L'entrée comporte des caractères non numériques.
    ** On les ignore (Par exemple "12345abcd" -> 12345) ? Qu'est ce qu'on fait des caractères non numériques : on les ignore ou on les garde pour la suite ? ** la ligne est entièrement invalidée ?
    **... ?

    * Si la ligne comporte des blancs avant les chiffres, ou un signe + ou -, est-ce admis ?

    ....

Discussions similaires

  1. faire des contrôles de saisie d'un champ textarea
    Par yawra dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 07/04/2012, 18h30
  2. Réponses: 0
    Dernier message: 18/11/2009, 15h58
  3. contrôle de saisie menu déroulant
    Par shnouf dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 05/01/2006, 16h30
  4. contrôle de saisie
    Par oceane751 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2006, 11h24
  5. [debutant] contrôle de saisie et formulaire
    Par oceane751 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/11/2005, 22h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo