# mehrere If Bedingungen



## Silke1977 (5. Nov 2017)

Hallo Zusammen,

Im Augenblick versuche ich ein Programm zu schreiben, was den passenden Durchmesser für einen Gymnastikball ausgibt.

Wie kann ich mehrere if-Bedingungen einbetten? Hat jemand eine Lösung?

Gruß
Silke

*import* java.util.Scanner;

*public* *class* durchmesser {

*public* *static* *void* main(String[] args) {
*final* Scanner s = *new* Scanner(System.*in*);
System.*out*.println("Bitte geben Sie Ihre Körpergröße ein?");
*int* koerpergroesse = s.nextInt();

*if*(0>= 140) {
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 45 cm ");

}*else* *if*(141>=155) {
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 55 cm ");

}*else* *if*(156>= 175){
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 65 cm ");

}*else* *if*(176>= 185){
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 75 cm ");

}*else* *if*(186>=195){
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 85 cm ");

}else if(198>=205);
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 95 cm ");

}*else*{
System.*out*.println("Bitte messen Sie Ihre Unterarmlänge mit einem Massband!");
}


----------



## Robat (5. Nov 2017)

A) ich verstehe die Frage nicht so wirklich. Was meinst du mit mehrere if-Bedingung einbetten? Du hast doch schon mehrere.

B) deine jetzigen Anfragen sind sinnfrei und werden niemals wahr sein. Wie soll denn 0 >= 140 sein. Du schaust immer ob eine kleinere Zahl größer ist als eine größere Zahl. Sicher dass das so gewollt ist?


----------



## Javinner (5. Nov 2017)

@Silke1977
Warum ist Scanner als final deklariert?


> Bitte messen Sie Ihre Unterarmlänge mit einem Massband!


Also gibt es hier eine Formel. Warum keine Methode, welche diese Eingabe gleich zu Beginn verarbeitet?


----------



## stg (5. Nov 2017)

Was du offenbar möchtest schreibt sich so:

```
if(0 <= koerpergroesse && koerpergroesse <= 140) {
    // ...
}
```
...und für die anderen Fälle dann analog.



Javinner hat gesagt.:


> @Silke1977
> Warum ist Scanner als final deklariert?


Warum stört dich das? Oder ist das tatsächlich ein Frage?


----------



## Javinner (5. Nov 2017)

stg hat gesagt.:
			
		

> Warum stört dich das? Oder ist das tatsächlich ein Frage?


War eine Frage. Wo ist der tiefere Sinn, den Scanner als final zu deklarieren?


----------



## Silke1977 (5. Nov 2017)

Hallo Zusammen,

Das Problem konnte ich so lösen:


*package* Durchmesser;

*import* java.util.Scanner;

*public* *class* durchmesser {

*public* *static* *void* main(String[] args) {
*final* Scanner s = *new* Scanner(System.*in*);
System.*out*.println("Bitte geben Sie Ihre Körpergröße ein?");
*int* koerpergroesse = s.nextInt();

*// beide Bedingungen müssen wahr sein &&*

*if*(koerpergroesse>=0 && koerpergroesse<=140) {
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 45 cm ");

}*else* *if*(koerpergroesse>=141 && koerpergroesse<=175) {
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 55 cm ");

}*else* *if*(koerpergroesse>=176 && koerpergroesse<=185){ 
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 65 cm ");

}*else* *if*(koerpergroesse>=186 && koerpergroesse<=195){
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 75 cm ");

}*else* *if*(koerpergroesse>=196 && koerpergroesse<=205){
System.*out*.println("Ihr passender Gymnastikball hat einen Durchmesser von 85 cm ");

}*else*{
System.*out*.println("Bitte messen Sie Ihre Unterarmlänge mit einem Massband!");

Wünsche allen einen schönen Sonntag.

Gruß
Silke


----------

