Složité podmínky AND OR

Potřebujeme-li složitější podmínku, která je složena z více "dotazů" potřebujeme k tomu logické operátory

&&     ...AND znamená "a zároveň
||      ...OR znamená "nebo"

 

V případě dinohry potřebujeme testovat nějakou takovou podmínku: pokud je překážka v místě dinosaura A ZÁROVEŇ dinosaurus není ve vzduchu.

if( prekazka.zleva < mistokolize  &&  dinoVeVzduchu== false){
         //sražka 
}

Boolovská hodnota

V souvislostí s logickými operátory AND a OR je třeba zmínit ještě jeden datový typ a to boolean. Do teď jsme pracovali s:

- řetězci, což je text a píše se do uvozovek například:"toto je retezec", "Ahoj světe!", "8"

- čísly, což je hodnota numerická která se dá sčítat, odčítat například: 0, 4, -2, 5.8

- bollean, což je pravdivostní hodnota která může nabývat jen dvou stavů: true, false


Podmínka if očekává v závorce boolean hodnotu if(bool){}

 

Logické operátory

Známe operátory matematické jako sčítání odčítání násobení apod. Které fungují s hornotami typu číslo. Výsledkem takové operace je opět číslo.

tutu = 8 * 2;
prom = 4 + tutu;     //prom=20

Pro boolen hodnoty používáme logické operátory. Jde o různé porovnávání, které zvykneme cpát do podmínek a nově i AND a OR. Výsledkem takové operace je pak hodnota true nebo false.

prom = 5;
bulibuli = prom > 8;       // false (někdy se může zobrazit jako 0), protože 5 není větší než 8
abcd = prom < 10;        // true (někdy se může zobrazit jako 1), protože 5 je menší než 10
if(prom == 5)...              //true, podmínka splněna protože prom je rovno 5
if(prom != 5) ...              //false, podmínka nesplněna protože prom není různé od 5
if(prom < 7 && prom>3)... //true, podmínka je splněna protože 5 se nachází v intervalu (3;5) je větší než tři a neší než 5
if(prom==7 || prom==3)... //false, podmínka bude splněna pokud prom bude 7 nebo 3, v tomto případě tedy splněná není

 

 

Kam dál?