Rechercher : dans
Par :

Switch et case

Dernière réponse le 16 jun 2009 à 16:56:26 galsen3, le 16 jun 2009 à 13:53:57 
 Signaler ce message aux modérateurs

Bonjour,
j'ai le programme ci-dessous et je veux ituliser les switch case a la place
comment faire?

int avoir_probleme(double a ,int b, double c){
if((b==2)&& (a<5.0))
return 1;
if((b==0))
return 1;
if(b==3)
return 1;
if((b==4)&& (a<5.0))
return 1;
return 0;

Configuration: Linux
Firefox 3.0

Meilleures réponses pour « switch et case » dans :
Numériser ses cassettes audio ou vinyles sur CD ou disque dur VoirComment transférer le contenu d'une cassette audio ou d'un vinyle vers son disque dur ? Comment graver sur CD ses vieux vinyles et cassettes ? Cet article vous présente le matériel et les logiciels nécessaires pour y remédier : I....
Casque audio, écouteurs, casque audio sans fil: comment choisir VoirPour regarder un film en toute tranquillité ou pour écouter de la musique sur un baladeur MP3, on ne va pas utiliser le même casque. Tout ce qu’il faut savoir pour bien choisir son casque. Présentation des produits Les écouteurs Le...
Qu'est ce qu'un switch ? VoirQu'est ce qu'un switch ? Définition Principe de fonctionnement La commutation Création de la table d'adresse MAC Pour aller plus loin Descendant du HUB, le switch, ou commutateur en français, est présent dans l'ensemble des...
Javascript - Les structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle? On appelle structure conditonnelle les instructions qui permettent de tester si une condition est vraie ou non, ce qui permet notamment de donner de l'interactivité à vos scripts. L'instruction...
Langage C - Les structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle ? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non. Ces structures conditionnelles peuvent être associées à des structures qui se répètent...
Javascript - L'objet RegExp VoirLes particularités de l'objet RegExp L'objet RegExp est un objet permettant de manipuler des expressions régulières, c'est-à-dire des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, afin de trouver des...

1

Chamicki, le 16 jun 2009 à 13:55:34

Quel langage utilise tu vb ?

Répondre à Chamicki

2

galsen3, le 16 jun 2009 à 14:17:07

Langage C

Répondre à galsen3

3

loupius, le 16 jun 2009 à 16:37:41

Si tu tiens au 'switch/case', on pourrait écrire:

int avoir_probleme(double a, int b, double c)
{
  switch (b)
  {
    case 0:
    case 3:
      return 1;
    case 2:
    case 4:
      if (a < 5.0)
        return 1;
  }
  return 0;
}
Mais c'est quand même plus facile avec 'if' (et probablement plus rapide)
int avoir_probleme(double a, int b, double c)
{
  if ( (b == 0) || (b == 3) ||
       ( ((b == 2) || (b == 4)) && (a < 5.0) ) )
    return 1;
  return 0;
}

Bon choix.

Répondre à loupius

4

 Char Snipeur, le 16 jun 2009 à 16:56:26

Avec que des switch :

int avoir_probleme(double a, int b, double c)
{
  switch (b)
  {
    case 0:
    case 3:
      return 1;
    case 2:
    case 4:
      switch(a < 5.0)
        {
        case true:  return 1;
        case false : return 0;
        }
  }
  return 0;
}

ou alors sans "if" ni switch et encore plus court
int avoir_probleme(double a, int b, double c)
{
     return ( (b == 0) || (b == 3) || ( ((b == 2) || (b == 4)) && (a < 5.0) ) )?1:0;
}
Mais en réfléchissant, je suis sur qu'on peut faire plus court et plus illisible, en utilisant des masques par exemple. Salutation ! (il faut bien que vous compreniez que j'ai TOUJOURS raison)
Char Snipeur

Répondre à Char Snipeur