The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
A „bool” adattípus logikailag igazat vagy hamisat generál.
Logikai/Boole-operátorok
| Alapvető logikai operátorok: | |
|---|---|
| == | Ugyanazok (ne használd a "=" jelet, mert a "=" hozzárendelést jelent) |
| != | Nem ugyanaz |
| < | Kevesebb, mint |
| > | Nagyobb, mint |
| || | Vagy |
| && | És |
| ! | Negálja a "!" utáni kifejezést. |
Logikai/logikai kifejezések
if(<boolean expressions>)
{
.....<block>
}
A <boolean expressions> egyetlen vagy összetett kifejezést fog tartalmazni, amelyet ki kell értékelni. A <block> egy kódblokkot jelent, amely csak akkor kerül végrehajtásra, ha a <boolean expressions> értéke igaz.
További logikai kifejezések:
| Logikai kifejezés | Mit jelent |
|---|---|
| ha (x == 10) | ha x egyenlő 10-zel |
| ha (x <= 10) | ha x kisebb -nál és egyenlő 10-el |
| ha (x > 10 || y > 20) | ha x nagyobb mint 10 vagy y nagyobb mint 20 |
| ha (x <= 10 && y <= 20) | ha x<=10 és y<=20 |
| ha !(x > 10 || y > 20) | ha x<=10 ésy<=20 |
| if ( !( x <=10 || x >=20) ) | Ha x>10 ésx<20 |
Különös körültekintéssel járjon el a logikai kifejezések használatakor!
A logikai típus (bool) egy egyszerű egész érték.
Nézzük meg, hogyan értelmezhető , ha (... ):
-
, ha (...)fog kiszámolni a fordító; az igaz vagy hamis jelentését állítja elő. - Az igazság a következő: amikor (... ) a 0-tól (vagyis nullától) eltérőt állít elő, a
, ha (.... )igazat fog jelenteni. -
Tehát: a következő kifejezések mindig igazak:
- ha (1)
- ha (10)
- ha (bármi nem nullát eredményez)
Gyakori hibák, amelyekre figyelni kell:
1. példa:
int X = 10, Y = 20;
if (X = Y)
brain.Screen.print("X és Y azonos.");
else
brain.Screen.print("X és Y különbözik.");
Kimenet: X és Y ugyanaz.
Miért?
, ha (X = Y)valóban azt jelenti:
- Rendelje Y-t X-hez, így X értéke 20
- A fordító úgy értelmezi, hogy (20) ahol (20) igaz, míg nem (0).
2. példa:
int X = 0, Y = 0;
if (X = Y)
brain.Screen.print("X és Y azonos.");
else
brain.Screen.print("X és Y különbözik.");
Kimenet: X és Y különböző.
Miért?
, ha (X = Y) valóban azt jelenti:
- Rendelje Y-t X-hez, így X értéke 0 (nulla).
- A fordító így értelmezi: (0) hamis.