Bonjour à tous,
Je veux faire un switch sur une variable de type : double, mais j'ai l'erreur suivante :Mon code :Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Cannot switch on a value of type double. Only convertible int values, strings or enum variables are permitted
Merci de vos aides !
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 import java.util.*; public class Exercice94CalculIMC { public static void main(String[] args) { // R�aliser un programme qui (indice de la masse corporelle): // Rappel : l'IMC est calcul� en divisant le poids par la taille au carr�. // - calcule et affiche l'IMC d'une personne (le poids et la taille seront saisis par l'utilisateur); //- interpr�te l'IMC calcul� en se servant du tableau ci-dessus. Scanner sc = new Scanner(System.in); double taille, poids; System.out.print("Saisir ta taille en cm : "); taille = sc.nextDouble(); // On le cache sc.nextLine(); System.out.print("Saisir ton poids en kg : "); poids = sc.nextDouble(); double imc = poids / (taille * taille); switch(imc) { case imc < 16.5: System.out.println("Pour une taille " + taille + " cm, et un poids de " + poids + " kg, votre IMC est : " + imc + "donc dénutritionné(e)"); break; case imc >= 16.5 && imc < 18.5: System.out.println("Pour une taille " + taille + " cm, et un poids de " + poids + " kg, votre IMC est : " + imc + "donc maigrère"); break; case imc >= 18.5 && imc < 25: System.out.println("Pour une taille " + taille + " cm, et un poids de " + poids + " kg, votre IMC est : " + imc + "donc normal"); break; case imc >= 25 && imc < 30: System.out.println("Pour une taille " + taille + " cm, et un poids de " + poids + " kg, votre IMC est : " + imc + "donc en surpoids"); break; default: System.out.println("Pour une taille " + taille + " cm, et un poids de " + poids + " kg, votre IMC est : " + imc + "donc obèse"); break; } System.out.println("Fin du programme !"); } }
Partager