cs_Xs
Messages postés368Date d'inscriptionmercredi 14 novembre 2001StatutMembreDernière intervention 1 septembre 2008
-
31 mars 2002 à 15:21
cs_Bog
Messages postés29Date d'inscriptionmercredi 26 décembre 2001StatutMembreDernière intervention28 janvier 2003
-
5 avril 2002 à 22:32
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Bog
Messages postés29Date d'inscriptionmercredi 26 décembre 2001StatutMembreDernière intervention28 janvier 2003 5 avril 2002 à 22:32
Suis les conseils de Kaid qui t'as donné une bonne solution à mon avis...
Clair et facile à mettre en place!
BeLZeL
Messages postés110Date d'inscriptionmardi 10 octobre 2000StatutMembreDernière intervention20 décembre 2005 1 avril 2002 à 14:20
... ou comment raccourcir un code qui fait 1600 lignes :)
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 20061 31 mars 2002 à 17:20
Tu crées un tableau avec autant d'éléments que de départements et pour chaque index correspondant à un département, tu y mets la chaine correspondante.
Exemple:
Ensuite tu testes si le numéro de département que le gars saisie se trouve entre 1 et la taille de ton tableau. Si c'est bon, tu regardes à cet index dans ton tableau et si ce n'est pas NULL, tu affiches le département.
Voila avec ca tu devras avoir un code plus lisible et enlever ces horreurs de "goto".
cs_Xs
Messages postés368Date d'inscriptionmercredi 14 novembre 2001StatutMembreDernière intervention 1 septembre 2008 31 mars 2002 à 15:23
ah !! perdon, j'ai fait une faute :
ce n'est pas :
char ain[MAX_SIZE];
mais
char dep[MAX_SIZE];
ben oui, c logique.
avec ca , ton code va etre kan meme une figure, un peu plus pro et plus courte, enfin, ce n'est que mon avis.
cs_Xs
Messages postés368Date d'inscriptionmercredi 14 novembre 2001StatutMembreDernière intervention 1 septembre 2008 31 mars 2002 à 15:21
tu peux raccourcir le code en enlevant ton switch !!!
faut faire un code du type :
int num;
char ain[MAX_SIZE];
....
if (strcmp(num "01") 0 || strcmp(num == "1") == 0)
/*le || n'est que pour les 10 premiers departements*/
{
dep = "Ain";
}
........
cout << "Le departement numero "<< num <<" est " <<dep <<endl;
5 avril 2002 à 22:32
Clair et facile à mettre en place!
1 avril 2002 à 14:20
31 mars 2002 à 17:20
Exemple:
char *tabDep[]={NULL, "Ain", "Ainse", "Allier", ... };
Ensuite tu testes si le numéro de département que le gars saisie se trouve entre 1 et la taille de ton tableau. Si c'est bon, tu regardes à cet index dans ton tableau et si ce n'est pas NULL, tu affiches le département.
Voila avec ca tu devras avoir un code plus lisible et enlever ces horreurs de "goto".
31 mars 2002 à 15:23
ce n'est pas :
char ain[MAX_SIZE];
mais
char dep[MAX_SIZE];
ben oui, c logique.
avec ca , ton code va etre kan meme une figure, un peu plus pro et plus courte, enfin, ce n'est que mon avis.
31 mars 2002 à 15:21
faut faire un code du type :
int num;
char ain[MAX_SIZE];
....
if (strcmp(num "01") 0 || strcmp(num == "1") == 0)
/*le || n'est que pour les 10 premiers departements*/
{
dep = "Ain";
}
........
cout << "Le departement numero "<< num <<" est " <<dep <<endl;