[java]problème avec if else

Résolu/Fermé
domxaline - Modifié par Whismeril le 18/05/2015 à 10:23
 domxaline - 18 mai 2015 à 18:15
Bonjour,
mon prg marche premier parti seulement, restant marche pas,
je m'explique
voilà but de mon prg est:
au début on donne pourcentage de 4 candidats:
lorsqu l'un des candidats obtient plus de 50%, il est élu dès le premier tour.
en cas de deuxième tour, peuvent participer uniquement les candidats ayant obtenu au moins 12.5% au premier tour.
mon prg doit traiter uniquement le premier candidat, veut dire A,
il dira s'il est élu,battu,ballottage favorable,ballottage défavorable
quelqu'un peut m'aider svp
import java.util.Scanner;
public class Testing
{
 public static void main(String[] args)
 {
  char reponse='0';
  do{
  System.out.println("Entrez score A:");
  Scanner valeur=new Scanner(System.in);
  int A=valeur.nextInt();
  System.out.println("Entrez score B:");
  int B=valeur.nextInt();
  System.out.println("Entrez score C:");
  int C=valeur.nextInt();
  System.out.println("Entrez score D:");
  int D=valeur.nextInt();
  
  if(A>50)
  {
   System.out.println("Elu au premier tour A:");
  }
  else if((B>50||C>50||D>50)||(A>=12))
  {
   System.out.println("Battu, éliminé, sorti!!!:");
  }
  else if(A>=B & A>=C & A>=D )
  {
   System.out.println("Ballotage favorable:");
  }
  else
  {
   System.out.println("Ballotage défavorable:");
  }
  System.out.println("Voulez vous reessayer,(O/N");
    Scanner sc=new Scanner(System.in);
    reponse=sc.nextLine().charAt(0);
 }
 while(reponse=='O');
  System.out.println("Au revoir...");
 }
 }

parti de ballotage favorable et défavorable marche pas



Edit: Précision du langage dans la coloration syntaxique.

5 réponses

Whismeril
Messages postés
17684
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
17 août 2022
849
18 mai 2015 à 10:28
Bonjour

Premier point tu dois tester 12.5 et tu travailles avec des int....

Ensuite, ton problème vient de la ligne 22.
Regarde bien les conditions que tu as mises, il y en a une qui est fausse.

0
ok, j'ai corrigé mon erreur
System.out.println("Entrez score A:");
  Scanner valeur=new Scanner(System.in);
  double A=valeur.nextDouble();
  System.out.println("Entrez score B:");
  double B=valeur.nextDouble();
  System.out.println("Entrez score C:");
  double C=valeur.nextDouble();
  System.out.println("Entrez score D:");
  double D=valeur.nextDouble();
  
  if(A>50)
  {
   System.out.println("Elu au premier tour A:");
  }
  else if((B>50||C>50||D>50))
  {
   System.out.println("Battu, éliminé, sorti!!!:");
  }

merci beaucoup
0
c'est vrai on a oublié
"le candidats ayant obtenu au moins 12,5% des voix au premier tour,qui va 2eme tour"
il faut le placer dans la quel if?
qu'est ce que vous en pensez?
0
Whismeril
Messages postés
17684
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
17 août 2022
849
18 mai 2015 à 16:20
Attention à ta coloration, j'ai du forcer le langage java

A cette ligne
  else if((B>50||C>50||D>50))
, il manque une condition, le candidat est éliminé si un des autres gagne (forcément) ou s'il fait moins de 12.5
0

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

Posez votre question
merci beaucoup
0