HIK Elektronikus Felsőoktatási Tankönyv- és Szakkönyvtár
A Kempelen Farkas Felsőoktatási Digitális Tankönyvtár/vagy más megjelenítő által közvetített digitális tartalmat a felhasználó a szerzői jogról szóló 1999. évi LXXVI. tv. 33. paragrafus (4) bekezdésében meghatározott oktatási, illetve tudományos kutatási célra használhatja fel. A felhasználó a digitális tartalmat képernyőn megjelenítheti, letöltheti, arról elektronikus adathordozóra vagy papíralapon másolatot készíthet, adatrögzítő rendszerében tárolhatja. A Kempelen Farkas Felsőoktatási Digitális Tankönyvtár/vagy más megjelenítő weblapján található digitális tartalmak üzletszerû felhasználása tilos, valamint kizárt a digitális tartalom módosítása és átdolgozása, illetve az ilyen módon keletkezett származékos anyag további felhasználása.

6.1. A logikai típusú változó

A logikai típusú változónak két lehetséges értéke van, a TRUE és a FALSE, vagyis igaz, vagy hamis. Ezek az értékek konstansként is megadhatók:

bool logikai = true;

Két kompatibilis érték összehasonlításának eredménye vagy igaz (true) vagy hamis (false) lesz. Például ha Sz változó int típusú, akkor az Sz < 4 kifejezés értéke lehet igaz is és hamis is, attól függően, hogy mi a változó pillanatnyi értéke. Az összehasonlítás eredményét tudjuk tárolni egy logikai típusú változóban.

bool logikai = true;

int sz = 2;

logikai = sz < 4;

Console.WriteLine("{0}",logikai);

Logikai kifejezéseket logikai operátorokkal köthetünk össze. Ezek a tagadás, a logikai és, illetve a logikai vagy operátorok. A C#-ban a műveleteket a következő képpen jelöljük:

Tagadás (negáció)

!

ÉS (konjunkció)

&&

VAGY (diszjunkció)

||

Nézzük az operátorok igazságtáblázatát a bemenő paraméterek különböző értékei mellett za operációk milyen eredményt szolgáltatnak?

Tagadás:

A

!A

TRUE

FALSE

FALSE

TRUE

Tehát minden értéket az ellentettjére fordít.

ÉS

A

B

A && B

TRUE

TRUE

TRUE

FALSE

TRUE

FALSE

TRUE

FALSE

FALSE

FALSE

FALSE

FALSE

Azaz kizárólag akkor lesz a művelet eredménye igaz, ha mindkét paraméter értéke igaz.

VAGY

A

B

A || B

TRUE

TRUE

TRUE

FALSE

TRUE

TRUE

TRUE

FALSE

TRUE

FALSE

FALSE

FALSE

Látható, hogy akkor hamis a művelet eredménye, ha mindkét paraméter értéke hamis.

Egy kifejezés kiértékelésében a zárójelek határozzák meg a kiértékelés sorrendjét, ha ez nem dönt, akkor a sorrend: TAGADÁS, ÉS, VAGY. Egyenrangú műveletek esetén a balról-jobbra szabály lép életbe.

bool logikai = true;

int x = 2, y = 5 ;

logikai = x > 4; // FALSE

logikai = logikai && !(y < 3); // FALSE

logikai = (x < 3) || (x > 4); // TRUE

logikai = (x >= 3) && (x <= 4); // FALSE

logikai = x > 3 && !(y < 6) || x < y; // TRUE