Question dsur l'instruction switch

Résolu
NikoGJ Messages postés 13 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 21 avril 2005 - 28 sept. 2004 à 12:30
NikoGJ Messages postés 13 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 21 avril 2005 - 29 sept. 2004 à 12:10
Salut,

je voudrais savoir si il est possible avec l'instruction switch et les case de prendre une plage de valeurs plutot qu'une valeur constante.

Je sais que c'est possible avec VisualBasic en faisant par exemple:

select case (i)
case 1 to 100 //pour les valeurs de 1 à 100
end select

j'aimerais savoir si il existe un équivalent en C.

voila, voilou!
merci!

9 réponses

NikoGJ Messages postés 13 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 21 avril 2005
29 sept. 2004 à 12:10
ok, merci pour vos reponses.
3
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
28 sept. 2004 à 13:58
Il te 'suffit' de faire

case 1:
case 2:
case 3:
...
case 100:

et remplacer les ... par ce qu'il faut, mais c'est long a écrire, un if est plus adapté ici
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
28 sept. 2004 à 14:31
si t'as un entier tu fais
if (i >= 1 && i <= 100)
je vois pas pourquoi tu te casse la tete.
si ton probleme est que ton nombre est un nombre a virgule
if (i >= 1 && i <= 100 && i - int (i) == 0)

et voila
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
28 sept. 2004 à 14:31
ou i == int (i)

pareil et plus simple a écrire lol
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
28 sept. 2004 à 14:34
petite précision, ca c'etait en C++, mais a l'ancienne norme.
en c tu fais
(int) i == i
et pour coller vraiment a la norme du c++ et faire ds le tres tres tres propre (et meme ds l'exces) tu fais
reinterpret_cast (i) == i
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
28 sept. 2004 à 14:37
Tu trouves que c'est lui qui se casse la tête?
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
28 sept. 2004 à 14:41
bah si c'est un int oui, si c'est un double je lui donne juste les differentes écritures. moi j'utilise int (i) en c++ paske c'est plus joli (ca fait un peu "fonction" je trouve ca plus lisible) apres j'ai juste donné les autres écritures que je connaissais, c'est plus pour la culture generale, et puis j'ai bien précisé que c'etait pousser le bouchon un peu loin. et j'ai tout précisé surtout ne sachant pas s'il etait en c ou en c++
0
cs_Arnotic Messages postés 933 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 9 janvier 2012
28 sept. 2004 à 14:59
dis moi pour 1 ligne de code trivale 4 msg ! bravo ;)

@+
Arnotic,
Admin CS, MVP Visual C++
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
28 sept. 2004 à 15:14
Surtout que personne n'avait jamais parlé de flottants...
0
Rejoignez-nous