probleme structure

probleme structure - C - Programmation

Marsh Posté le 17-11-2011 à 11:01:49    

Bonjour,  
 
je n'arrive pas a trouver une syntaxe correct
 
 

Code :
  1. struct morse table[37] = /* code morse */
  2. {
  3. char *lettre;
  4. char *code;
  5. 'A', ".-",
  6. 'B', "-...",
  7. 'C', "-.-.",'D', "-..",
  8. 'E', ".",
  9. 'F', "..-.",
  10. 'G', "--.",
  11. 'H', "....",
  12. 'I', "..",
  13. 'J', ".---",
  14. 'K', "-.-",
  15.   'L', ".-..",
  16.   'M', "--",
  17.   'N', "-.",
  18.   'O', "---",
  19.   'P', ".--.",
  20.    'Q', "--.-",
  21.    'R',".-.",
  22.    'S', "...",
  23.    'T', "-",
  24.    'U', "..-",
  25.    'V', "...-",
  26.     'W', ".--",
  27.     'X', "-..-",
  28. 'Y', "-.--",
  29. 'Z', "--..",
  30. '.', ".-.-.-",
  31. '0', "-----",
  32. '1', ".----",
  33. '2', "..---",
  34. '3', "...--",
  35. '4', "....-",
  36. '5', ".....",
  37. '6', "-....",
  38.   '7', "--...",
  39.    '8', "---..",
  40.    '9', "----.",
  41.    };

Reply

Marsh Posté le 17-11-2011 à 11:01:49   

Reply

Marsh Posté le 17-11-2011 à 11:40:04    

Regardes comment sont tes données:
 
tu as des couples lettre <-> chaine de cinq caractères au plus.
Donc déjà, tu peux définir une structure qui explicite cela:
 
typedef struct morse {
    char lettre;
    char code[6];
};
 
Ensuite tu as une table de 37 couples.
 
struct morse tabmorse[37] = {
    {'A', ".-"},  
     ...
    {'Z', "--.."},  
    {'0', "-----"},  
     ...
    {'9',"----."}
};
 
 
Note: Pour des raisons de simplicité, il vaut mieux faire une table de 256 valeurs, avec des couples dont la partie code est la chaine vide, ça permet de mettre en position i du tableau le couple dont la lettre a pour valeur i, et ça simplifie grandement la recherche du code associé à une lettre (tu as pour tout tes couples tabmorse[i].lettre = i).
Et quand tu en est arrivé à ce stade, tu te rends compte qu'en fait tu n'as plus besoin de la partie lettre et qu'une table de 256 chaines suffit.
 
A+,


Message édité par gilou le 17-11-2011 à 12:23:09

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed