uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011
-
19 août 2009 à 17:01
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011
-
19 août 2009 à 17:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011 19 août 2009 à 17:01
Salut,
Quelques améliorations, disons des détails qui fonctionnent dans ton cas mais qui restent de mauvaises habitudes :
(choixmenu != 1 || choixmenu != 2 || choixmenu != 3) devient ((choixmenu < 1) || (choixmenu > 3))
Si ton nombre doit être compris entre 1 et 100, tu vas pas t'amuser à tester les 100 valeurs...
Cela dit, je ne sais pas comment tu rentres dans ton while, parce-que 'choixmenu' est à 1 dès le début. Tel que tu l'as pasté, ton code affiche 1 ligne en console, rien de plus.
if / if / else if, pas top si tu veux faire l'équivalent d'un switch. Dans ton cas, tu testes 'choixmenu', qui ne peut avoir qu'une valeur. Encore une fois, si c'est entre 1 et 100, et que tu balances 100 if pour tester (choixmenu == n), toutes les conditions vont être toujours testées, ce qui ralentit. Il vaut mieux utiliser if / else if / else if, comme tu la fait pour 'choixlvl', ou, mieux, un switch direct (je pense).
Tu peux remplacer la plupart de tes printf() par des puts(), ça évitera au compilo de le faire.
19 août 2009 à 17:01
Quelques améliorations, disons des détails qui fonctionnent dans ton cas mais qui restent de mauvaises habitudes :
(choixmenu != 1 || choixmenu != 2 || choixmenu != 3) devient ((choixmenu < 1) || (choixmenu > 3))
Si ton nombre doit être compris entre 1 et 100, tu vas pas t'amuser à tester les 100 valeurs...
Cela dit, je ne sais pas comment tu rentres dans ton while, parce-que 'choixmenu' est à 1 dès le début. Tel que tu l'as pasté, ton code affiche 1 ligne en console, rien de plus.
if / if / else if, pas top si tu veux faire l'équivalent d'un switch. Dans ton cas, tu testes 'choixmenu', qui ne peut avoir qu'une valeur. Encore une fois, si c'est entre 1 et 100, et que tu balances 100 if pour tester (choixmenu == n), toutes les conditions vont être toujours testées, ce qui ralentit. Il vaut mieux utiliser if / else if / else if, comme tu la fait pour 'choixlvl', ou, mieux, un switch direct (je pense).
Tu peux remplacer la plupart de tes printf() par des puts(), ça évitera au compilo de le faire.