eine andere Möglichkeit für die Umsetzung mit If wäre es, nicht die einzelnen Werte zu überprüfen, sondern gleich den ganzen Bereich
da du als Datentyp int verwendest, können nur ganze Zahlen eingegeben werden
da zwischen den Werten 2, 3, 4, 5, 6, 7 und 8 keine ungültigen Werte liegen können, kann man prüfen, ob der Wert innerhalb dieses Bereiches liegt oder ob er nicht außerhalb des Bereiches liegt (genauso lässt sich der Code im If und im Else Bereich tauschen, wenn man prüft, ob der Wert außerhalb oder nicht innerhalb liegt)
das könnte so aussehen:
|
Quellcode
|
1
|
if(Player >= 2 && Player <= 8) {...}
|
|
Quellcode
|
1
|
if(!(Player < 2 || Player > 8)) {...}
|
bei der Eingabe für das Teamspiel sieht es ein wenig anders aus, da dort nur jede 2. Zahl ab 4 bis einschließlich 8 gültig ist
da es nur 3 Werte sind, könnte man dies auch mit einer Überprüfung eines jeden möglichen Werts abhandeln
es lässt sich aber mit einem Rechenschritt mehr auch auf die oben dargestellte Art lösen: man prüft, ob die Zahl restlos durch 2 teilbar ist
|
Quellcode
|
1
|
if(Player >= 4 && Player <= 8 && Player % 2 == 0) {...}
|
solltest du es noch nicht gelesen haben: das % stellt den Modulo-Operator dar, der den Restwert einer Division ermittelt
wenn die Zahl bei einer Division durch 2 einen Restwert von 0 zurück lässt, ist die Zahl durch 2 teilbar
in diesem Fall wäre es eventuell schneller, die einzelnen Möglichkeiten zu überprüfen, allerdings ließen sich die möglichen Werte dann nicht so leicht ändern (so viel nur am Rande)