Schachtelung
Schachtelung mithilfe von logischen Operatoren
In anderen Szenarien sind logische Operatoren bei der Schachtelung beziehungsweise Verknüpfung von Bedingungen nützlich:
Logisches ODER ||
Zur Sicherheit wollen wir bei der Kollisionserkennung mit zwei Abstandssensoren arbeiten. Der Roboter soll nun anhalten, wenn einer der beiden Sensoren einen Wert (d1
bzw. d2
) unter dem Schwellenwert threshold
misst. Mit einem geschachtelten if/else-Konstrukt wäre das zugehörige Pseudocode-Fragment:
if(d1 < threshold)
{
stop();
}
else if (d2 < threshold)
{
stop();
}
Mit einem logischen ODER (die erste Bedingung, die zweite oder beide erfüllt) kann man das übersichtlicher abbilden:
if(d1 < threshold || d2 < threshold)
{
stop();
}
Logisches UND &&
Auch hier wird mit zwei Abstandssensoren gearbeitet. Der Roboter soll jedoch nur anhalten, wenn beide Sensoren Werte unter dem Schwellenwert messen. Mit einem geschachtelten if/else-Konstrukt wäre das zugehörige Pseudocode-Fragment:
if(d1 < threshold)
{
if (d2 < threshold)
{
stop();
}
}
Mit einem logischen UND (nur wenn beide Bedingungen erfüllt) kann man das übersichtlicher abbilden:
if(d1 < threshold && d2 < threshold)
{
stop();
}