Використання логічних значень у VEXcode Pro V5

Тип даних “bool” генерує логічно true або false.

Логічні/булеві оператори

Логічні/булеві вирази
if(<boolean expressions>)
	{
	.....<block>
}

<boolean expressions> міститиме одиничний або складний вираз для оцінки. <block> означає блок коду, який буде виконано, лише якщо <boolean expressions> буде оцінено як істинне.

Більше логічних виразів:
Логічний вираз Що це значить
якщо (x == 10) якщо х дорівнює 10
якщо (x <= 10) якщо x менше і дорівнює 10
якщо (x > 10 || y > 20) якщо x більше 10 або y більше 20
якщо (x <= 10 && y <= 20) якщо x<=10 і y<=20
якщо !(x > 10 || y > 20) якщо x<=10 іy<=20
якщо ( !( x <=10 || x >=20) ) Якщо x>10 іx<20

Будьте особливо обережні при використанні булевих виразів!

Логічний тип (bool) — це просте ціле число.

Давайте подивимося, як інтерпретується , якщо (... ):

  • , якщо (...) буде обчислено компілятором; воно створює значення істинного чи хибного.
  • Істина полягає в тому, що коли ( ... ) створює щось інше, ніж 0 (тобто нуль), якщо ( .... ) означатиме істину.
  • Отже: такі вирази завжди вірні:
    • якщо (1)
    • якщо ( 10 )
    • якщо ( будь-який результат відмінний від нуля)

     

Поширені помилки, на які варто звернути увагу:

приклад 1:

int X = 10, Y=20;
if (X = Y)
	brain.Screen.print("X і Y однакові.");   
else
	brain.Screen.print("X і Y різні.");

Результат: X і Y однакові. 

чому

, якщо (X = Y)дійсно означає:

  • Призначте Y до X, щоб X мав значення 20 
  • Компілятор інтерпретує це так, ніби (20), де (20) є істинним, а не (0).

приклад 2:

int X = 0, Y=0;
if (X = Y)
	brain.Screen.print("X і Y однакові.");   
else
	brain.Screen.print("X і Y різні.");

Результат: X і Y різні. 

чому

, якщо (X = Y) дійсно означає:

  • Призначте Y до X, щоб X мав значення 0 (нуль).
  • Компілятор інтерпретує це як: (0) як false.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: