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 : 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
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); } }
Partager