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 :

Convertir des caractères en code Morse


Sujet :

C++

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 18
    Points : 14
    Points
    14
    Par défaut Convertir des caractères en code Morse
    Le prpgramme ci-dessous convertit les chiffres en code Morse.
    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
    16
    17
    18
    19
    20
    21
       * #include <stdio.h>
        *
        * static char *numbers[] =
        * {
        *         "-----", ".----", "..---",
        *         "...--", "....-", ".....",
        *         "-....", "--...", "---..",
        *         "----."
        * };
        *
        * int main(int argc, char **argv, char **environ)
        * {
        *         char AlfaNum = 'a';
        *
        *         while(AlfaNum != '*')
        *         {
        *                 AlfaNum = getchar();
        *                 if(AlfaNum >= '0' && AlfaNum <= '9')
        *                         printf("%c -> %s\n",AlfaNum, numbers[AlfaNum - '0']);
        *         }
        * }
    Mais comment faut-il le modifier pour qu'il puisse le faire aussi avec des lettres majuscules aussi , ainsi qu'avec le point, la virgule, le point d'interrogation et le slash / ?

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2005
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juin 2005
    Messages : 64
    Points : 368
    Points
    368
    Par défaut
    Salut

    Pour le faire avec d'autres caractères, tu fais pareil

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    static char *lettres[] =
    {
      ".-", "-...", "-.-.", etc... ( j'me souviens plus très bien du reste  :oops: )
    };
    Et tu ajoutes dans ta boucle le traitement de ton texte les majuscules et minuscules

    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
    while(AlfaNum != '*')
    {
      AlfaNum = getchar();
      if(AlfaNum >= '0' && AlfaNum <= '9')
        printf("%c -> %s\n",AlfaNum, numbers[AlfaNum - '0']);
      if(AlfaNum >= 'A' && AlfaNum <= 'Z')
        printf("%c -> %s\n",AlfaNum, lettres[AlfaNum - 'A']);
      if(AlfaNum >= 'a' && AlfaNum <= 'z')
        printf("%c -> %s\n",AlfaNum, lettres[AlfaNum - 'a']);
      //Et le point aussi
      if(AlfaNum == '.') printf("%c -> %s\n",AlfaNum, "//");
      //Et l'espace
      if(AlfaNum == ' ') printf("%c -> %s\n",AlfaNum, "/");
      //etc
    }
    C'est pas ce qui ce fait de mieux, mais ça doit fonctionner

  3. #3
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    hello

    juste pour savoir si c'est vraiment du C++.
    sinon il y a le forum C

  4. #4
    Membre habitué
    Avatar de superspag
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 153
    Points : 186
    Points
    186
    Par défaut
    Si c'est du c++ une simple map suffit non ?
    Plus y'a d'Gruyère, plus y'a d'trous !
    Plus y'a d'trous, moins y'a d'Gruyère...
    Donc, Plus y'a d'Gruyère, moins y'a d'Gruyère !!!

Discussions similaires

  1. convertir des caractère Ascii en hexa
    Par xtimas dans le forum MATLAB
    Réponses: 3
    Dernier message: 23/04/2010, 13h07
  2. Recherche d'une fonction lua pour convertir des caractères accentués
    Par Jerome78 dans le forum Développement 2D, 3D et Jeux
    Réponses: 1
    Dernier message: 21/11/2008, 11h37
  3. Convertir des caractères accentués
    Par mims1664 dans le forum Langage
    Réponses: 2
    Dernier message: 20/10/2008, 22h00
  4. Convertir du caractère au code ASCII
    Par Midou45 dans le forum Débuter
    Réponses: 3
    Dernier message: 03/05/2008, 10h43
  5. Convertir des caractères ASCII
    Par sliderman dans le forum Langage
    Réponses: 1
    Dernier message: 14/03/2008, 14h05

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