System.out.println("Dit BMI-tal er:" + beregning); int int_vaerdi =(int)beregning;
}
public static String tilstand(int int_vaerdi) {
String skala =""; switch(int_vaerdi) { if (int_vaerdi<=25) skala = "Du er normal"; else if (int_vaerdi==26) skala = "Du er moderat overvægtig!"; else if (int_vaerdi==27) skala = "Du er moderat overvægtig!"; else if (int_vaerdi==28) skala = "Du er pænt stor!"; else if (int_vaerdi==29) skala = "Du er pænt stor!";
else if (int_vaerdi>29) skala = "Gør noget ved dit vægtproblem!"; }
return skala;
}
}
Compileren smider en fejlmeddelse om, at min switch i metoden tilstand ikke kan nåes. Hvad gør jeg forkert?
Det er fordi du slet ikke skal bruge en switch, når du if-then-elser dig ud af det. Du har slet ingen case etellerandet i din, og det brokker den sig over. Du kan nøjes med:
public static String tilstand(int int_vaerdi) { String skala =""; if (int_vaerdi<=25) skala = "Du er normal"; else if (int_vaerdi==26) skala = "Du er moderat overvægtig!"; else if (int_vaerdi==27) skala = "Du er moderat overvægtig!"; else if (int_vaerdi==28) skala = "Du er pænt stor!"; else if (int_vaerdi==29) skala = "Du er pænt stor!"; else if (int_vaerdi>29) skala = "Gør noget ved dit vægtproblem!"; return skala; }
Jeg mener at bmi værdierne ligger sådan her, prøv selv på netdoktor de har en bmi tester liggende, eller har jeg en fuldt funktionel bmi-applet applet du kan få koden til, hvis du stikker mig nogle point
iseof har ret, men du er ikke istand til at bruge < > i en switch sætning. Derfor er du på rette sport med if then else sætninger, da en case kun kan indeholde en værdi switch(int_værdi) { case 0: skala=\"Du har et problem\" }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.