Convertir degrés celcius en fahrenheit
Bonjour,
Je suis actuellement le TP cité en ojet. J'aimerais utiliser que la boucle while le souci est que j'arrive uniquement au message Good bye.
Cordialement.
Code:
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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
| import java.util.Scanner;
public class Sdz1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//initialisation des variables
double aConvertir, convertit=0;
char reponse =' ', mode = ' ';
Scanner sc = new Scanner(System.in);
while (reponse == 'O'){
System.out.println("CONVERTISSEUR DEGRÉS CELSIUS ET DEGRÉS FAHRENHEIT");
System.out.println("-------------------------------------------------");
//On initialise celle-ci à O pour oui
while (mode != '1' && mode != '2' )
{
mode = ' ';
System.out.println("Choisissez le mode de conversion : ");
System.out.println("1 - Convertisseur Celsius - Fahrenheit ");
System.out.println("2 - Convertisseur Fahrenheit - Celsius ");
mode = sc.nextLine().charAt(0);
//saisie de la température à convertir
System.out.println("Température à convertir :");
aConvertir = sc.nextDouble();
//Pensez à vider la ligne lue
sc.nextLine();
if(mode == '1'){
convertit = ((9.0/5.0) * aConvertir) + 32.0;
System.out.print(aConvertir + " °C correspond à : ");
System.out.println(arrondi(convertit, 2) + " °F.");
System.out.println("Souhaitez-vous convertir une autre température ?(O/N)");
reponse = sc.nextLine().charAt(0);
}
else if (mode == '2'){
convertit = ((aConvertir - 32) * 5) / 9;
System.out.print(aConvertir + " °F correspond à : ");
System.out.println(arrondi(convertit, 2) + " °C.");
System.out.println("Souhaitez-vous convertir une autre température ?(O/N)");
reponse = sc.nextLine().charAt(0);
}
else {
System.out.print("Vous n'avez pas choisi une valeur juste");
}
}
}
System.out.print("Good Bye");
}
public static double arrondi(double A, int B) {
return (double) ( (int) (A * Math.pow(10, B) + .5)) / Math.pow(10, B);
}
} |