IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Condition IF dans une structure SWITCH


Sujet :

Android

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Condition IF dans une structure SWITCH
    Bonjour,

    J'ai un problème pour vérifier deux conditions dans le résultat d'un calcul (un minimum et un maximum) dans une structure SWITCH. Ca va vous sembler basique, mais je ne comprend ce qui ce passe : mon résultat est faux ! Je vous soumets mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    switch (compteur)
    	     	{  
     
    	     	case 0:
    	     		new_valeur = 0;
    	     		break;
    	     	case 1:
    	     		new_valeur = 2.30;
    	     		break;
    	     	case 2:
    	     		valeur = (11.60 + (base * 3 / 100));
    	     		new_valeur = Math.round(valeur*100.0)/100.0;  // arrondi 
    	     		if (new_valeur < 73.00); {new_valeur = 73.00;} // montant mini
    	     		if (new_valeur > 110.00); {new_valeur = 110.00;} // montant maxi
    	     		break;
    	     	default : valeur = 0;
    			}
    Dans le "case 2", le résultat donné est toujours 110.00 quelque soit la valeur donnée à la variable "base".

    Doit-on rajouter un ELSE ? Où est-ce dû au type de variable (Double)

    Merci beaucoup à celui ou celle qui pourra me dire où est l'erreur.

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Retire les points virgule de tes if.

    Ce code if (new_valeur < 73.00); {new_valeur = 73.00;} est équivalent à {new_valeur = 73.00;}.

    Le ; après le if ferme le bloc lui correspondant. C'est du code mort, pour le coup.
    Ainsi, ta suite d'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    	     		if (new_valeur < 73.00); {new_valeur = 73.00;} // montant mini
    	     		if (new_valeur > 110.00); {new_valeur = 110.00;} // montant maxi
    Signifie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    	     		{new_valeur = 73.00;} // montant mini
    	     		{new_valeur = 110.00;} // montant maxi
    Il est donc tout à fait normal que la valeur finale de new_valeur soit de 110.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Décembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2012
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Quel idiot suis-je ! La programmation ne pardonne pas aux fautes de ponctuation... Je suis débutant et ça ne saute pas aux yeux !

    Merci beaucoup. Ca marche à merveille !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 21/12/2005, 16h44
  2. Condition contenu dans une variable string
    Par tomo0013 dans le forum Access
    Réponses: 6
    Dernier message: 01/12/2005, 14h15
  3. Enlver un noeud dans une structure XML
    Par Sharingan dans le forum ASP
    Réponses: 4
    Dernier message: 20/12/2004, 08h08
  4. donée de plusieur vecteur dans une structure ??
    Par lipczynski dans le forum C++
    Réponses: 5
    Dernier message: 13/08/2004, 08h17
  5. type void* dans une structure
    Par barbapapaz dans le forum C
    Réponses: 3
    Dernier message: 16/07/2004, 16h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo