Zum Inhalt springen

P3 – Theorie (Bedingungen)

Logische Operatoren, Vergleichsoperatoren
if & else-Bedingungen, switch-Case-Bedingungen
Was hat es auf sich mit dem else if?

Vergleichs Operatoren =
Vergleichen die Werter zweier Variablen miteinander.

Vergleich Code Kommentar
Gleichheit a == b a und b müssen vom gleichen Typ sein
Ungleichheit a != b a und b müssen vom gleichen Typ sein
Größer a > b a und b müssen Zahlen sein
Kleiner a < b a und b müssen Zahlen sein
Größergleich a >= b a und b müssen Zahlen sein
Kleinergleich a <= b a und b müssen Zahlen sein

Logische Operatoren =
WErden zum Verküpen mehrerer Vergleichs Operatoren verwendet. Meist in der Bedingung eines Ausdrucks.

Verknüpfung Code Kommentar
Nicht !a falls a unwahr ist
Und a&&b a und b sind wahr
Oder a||b

a^b

entweder a ist wahr oder b wahr ist wahr oder beide sind wahr
entweder a ist wahr oder b ist wahr

if(Bedingung)
{
Anweisung;
}

if(Bedingung)
{
anweisungWennBedingungStimmt;
}
else
{
anweisungWennBedingungNichtStimmt;
}

switch(Ausdruck)
{
case X: anweisungWennX;
break;
case Y: anweisungWennY;
break;
case Z: anweisungWennZ;
break;
default: alternativeAnweisung;
break;
}

- Der Code innerhalb der if-Bedingung wird mit einem Tab eingerückt.

- Wenn man mehr als 3 if-Bedingungen verschachtelt, sollte man überlegen ob switch-case sinnvoller ist.

- Wenn die Bedingung zu lange wird, dann bricht man an den Operatoren um, dabei bleiben höherwertige Klammerpaare zusammen, z.B.:
if( (x * y > 5 && x - y < 10) || (7 * x > 3 &&  y - 4 = 0)  || x = 4 )

umbrechen in:
if( (x * y > 5 && x - y < 10) || (7 * x > 3 &&  y - 4 = 0)  ||
x = 4 )

aber NICHT in:
if( (x * y > 5 &&
x - y < 10) || (7 * x > 3 &&
y - 4 = 0)  || x = 4 )