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

 Delphi Discussion :

pb Encadrement simple


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 20
    Par défaut pb Encadrement simple
    Bonjour,

    Voilà je fais une application pour vérifier le numéro de sécu, et j'aimerai savoir si vous saviez comment coder cette phrase :

    //verifie que le quatrieme et cinquieme caractère sont compris entre 01 et 12
    je pensai partir de cette manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     // verifie que le premier caractère est 1,2 , 7 ou 8
    if (copy(_sNoSecu,1,1) = '1') or (copy(_sNoSecu,1,1) = '2')  or (copy(_sNoSecu,1,1) = '7')  or (copy(_sNoSecu,1,1) = '8') then
    mais je pense qu'un encadrement serait plus simple, seulement j'ai du mal à le concevoir en langage pascal. Comment dire que le 4eeme et 5eme caractere ne forme qu'un chiffre?

    merci

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Par défaut
    Fait rapidement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Var
      SCode : String;
      iCode : integer;
    begin
      // on concatène le 4em et 5em caractères
      sCode := Copy(_sNoSecu,4,1) + Copy(_sNoSecu,5,1) ;
      // On le transforme en entier (si erreur on met -1)
      iCode := StrToIntDef(sCode,-1);
      // On vérifie que le code est différent de -1 et est bien compris entre 1 et 12
      if ((iCode <> -1) and (iCode in [1..12])) then
      begin
        // action !!!
      end;
    end;
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  3. #3
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 20
    Par défaut
    Je te remercie pour ta réponse.
    Est ce obligé de mettre l'étape -1? A quoi sert elle vraiment?

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par défaut
    Consulte l'aide de StrToIntDef : "Si S ne représente pas un nombre valide, StrToIntDef renvoie Default. "

    J'aurais plutôt écrit pour Premier Caractère
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (Length(_sNoSecu) >= 1) and (_sNoSecu[1] in ['1', '2', '7', '8']) then
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 20
    Par défaut
    Copy(_sNoSecu,4,1) a pour signification le parametre, la place du caractère et le 3ème signifie?

  6. #6
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par défaut
    Lit La DOCUMENTATION Copy !!!

    Pour le 4 et 5 !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      if StrToIntDef(Copy(_sNoSecu, 4, 2), -1) in [1..12] then
      begin
        // action !!!
      end;
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  7. #7
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 20
    Par défaut
    D'accord , merci pour l'aide

  8. #8
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 20
    Par défaut
    Toujours aussi aimable mais merci!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [simple] Récupérer sélection d'un TComboBox
    Par Claythest dans le forum Composants VCL
    Réponses: 5
    Dernier message: 10/06/2003, 17h30
  2. Effet de transition simple entre 2 images
    Par ChrisFAPS dans le forum Flash
    Réponses: 2
    Dernier message: 18/04/2003, 12h41
  3. Bon je vais essayer d'être simple :
    Par fpouget dans le forum Langage SQL
    Réponses: 8
    Dernier message: 09/04/2003, 17h46
  4. Edition d'un simple fichier java
    Par mcrepin dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 21/03/2003, 14h28
  5. recherche exemple simple pour corba en c++
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 06/05/2002, 11h29

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