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

avec Java Discussion :

Problème avec if ... else. ..


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Mai 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 10
    Par défaut Problème avec if ... else. ..
    Bonjour à tous , voila je viens de commencer le Java aujourd'hui et je veux prendre un peu d'avance sur les cours.J'ai essayé de coder en Java des exercices que j'avais fait en cours.Pas de soucis pour les exercices simples mais la j'arrive au SI ... Sinon ect et c est la que je bloque. Si vous avez une idée de mon erreur ou de mon oubli , je prends avec plaisir

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    import javax.swing.JOptionPane;
     
    public class testAlcoolemie {
     
    	/**
             * @param args
             */
    	public static void main(String[] args) {
    		// TODO Raccord de méthode auto-généré
     
     
     
     
    String valeurChaine ;
     
    int quantiteConsommée , poidsIndividu , sexeIndividu ;
    double degré , tauxAlcoolémie ;
     
    valeurChaine= JOptionPane.showInputDialog ("Quantité en ml consommée ?");
    quantiteConsommée = Integer.parseInt(valeurChaine );
     
    valeurChaine= JOptionPane.showInputDialog ("Degré de l'alcool ?");
    degré = Double.parseDouble( valeurChaine);
     
    valeurChaine= JOptionPane.showInputDialog ("Poids (en kg) ?");
    poidsIndividu = Integer.parseInt( valeurChaine);
     
    valeurChaine= JOptionPane.showInputDialog ("Sexe ?(0 pour un homme et 1 pour une femme ) ");
    sexeIndividu= Integer.parseInt( valeurChaine);
     
    if(sexeIndividu == 0)
    {    tauxAlcoolémie = (quantiteConsommée*degré*0.8)/ (poidsIndividu*0.7) ;	
     
    }
    else ;
    {    tauxAlcoolémie = (quantiteConsommée*degré*0.8)/ (poidsIndividu*0.6) ;	
     
    }
    	 JOptionPane.showMessageDialog(null,"Votre taux est de :"+tauxAlcoolémie+ "g/l");
     
    	}
     
    }
    Il ne prend pas en compte le 1 ou le 0

    Merci d'avance

  2. #2
    Membre chevronné Avatar de ngpub
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Par défaut
    Attention aux points-virgules leur position n'est pas neutre, il peut en suffire d'un mal placé pour demander de l'aide sur un forum...

  3. #3
    Membre habitué
    Inscrit en
    Mai 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 10
    Par défaut
    rofl pourquoi je met un ; apres else ... En tout cas merci bcp . Par contre j en profite pour demander autre chose : en fait j ai mis le coup du 1 ou 0 suivant le sexe car je n y arrivais pas avec par exemple M ou F auriez vous une idée ?


    Egalement , que pensez vous de ma formule pour trouver le taux d alcoolemie ? car les resultats sont plutot tres élévés


    en tout cas merci

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 7
    Par défaut
    Salut Xéon, essaye ça pour choisir le sexe avec M ou F:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    import javax.swing.JOptionPane;
     
    public class test {
     
    	/**
             * @param args
             */
    	public static void main(String[] args) {
    		// TODO Raccord de méthode auto-généré
     
     
     
     
    String valeurChaine ;
     
    int quantiteConsommée , poidsIndividu , sexeIndividu ;
    double degré , tauxAlcoolémie ;
     
    valeurChaine= JOptionPane.showInputDialog ("Quantité en ml consommée ?");
    quantiteConsommée = Integer.parseInt(valeurChaine );
     
    valeurChaine= JOptionPane.showInputDialog ("Degré de l'alcool ?");
    degré = Double.parseDouble( valeurChaine);
     
    valeurChaine= JOptionPane.showInputDialog ("Poids (en kg) ?");
    poidsIndividu = Integer.parseInt( valeurChaine);
     
    String sexe= JOptionPane.showInputDialog ("Sexe ?(M pour un homme et F pour une femme ) ");
     
     
    if(sexe == "M")
    {    tauxAlcoolémie = (quantiteConsommée*degré*0.8)/ (poidsIndividu*0.7) ;	
     
    }
    else ;
    {    tauxAlcoolémie = (quantiteConsommée*degré*0.8)/ (poidsIndividu*0.6) ;	
     
    }
    	 JOptionPane.showMessageDialog(null,"Votre taux est de :"+tauxAlcoolémie+ "g/l");
     
    	}
     
    }

  5. #5
    Membre chevronné Avatar de ngpub
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Par défaut
    Attention les Strings sont des objets dans le cas précédent on compare des adresses*, ici on cherche à comparer le contenu, il est préférable de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if("M".equals(sexe)) ...
    que pensez vous de ma formule pour trouver le taux d alcoolemie ? car les resultats sont plutot tres élévés
    Perso, je pense que ce n'est pas le problème, c'est une affaire de spécialistes du domaine qui n'a rien à voir avec le code.
    Une question plus intéressante est de savoir que ce passe-t-il si l'utilisateur saisit "je ne sais pas" pour le sexe ?



    *En fait les strings ont un comportement plus subtil avec le comparateur "==" mais c'est une exception, et quoi qu'il en soit ici cela ne fonctionne pas.

  6. #6
    Membre habitué
    Inscrit en
    Mai 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 10
    Par défaut
    Moi aussi j avais essayé comme ca mais cela bien sur ne fonctionné pas .


    je vais essayer ca , mais je n aurais pas trouvé de moi meme , merci


    Une question plus intéressante est de savoir que ce passe-t-il si l'utilisateur saisit "je ne sais pas" pour le sexe ?

    J imagine que ca va calculer comme si c'etait une Femme non ?

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

Discussions similaires

  1. Problème avec if .. else if.. else dans une fonction
    Par marwa21 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 21/04/2011, 10h37
  2. Problème avec les "else if"
    Par ookki dans le forum C++
    Réponses: 5
    Dernier message: 22/06/2008, 18h25
  3. problème avec la "ELSE"
    Par amazircool dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 17/12/2007, 14h23
  4. problème avec if..else..endif
    Par casavba dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 01/08/2007, 11h14
  5. Problèmes avec des else if
    Par Kr00pS dans le forum C
    Réponses: 2
    Dernier message: 15/04/2006, 11h04

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