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.
Kiểu dữ liệu “bool” tạo ra giá trị logic đúng hoặc sai.
Toán tử logic/Boolean
Biểu thức logic/Boolean
nếu(<boolean expressions>) { .....<block> }
<boolean expressions>
sẽ chứa một biểu thức đơn hoặc phức tạp cần đánh giá. <block>
có nghĩa là một khối mã sẽ chỉ được thực thi nếu <boolean expressions>
được đánh giá là đúng.
Thêm biểu thức Boolean:
Biểu thức Boolean | Nó có nghĩa là gì |
nếu (x == 10) | nếu x bằng 10 |
nếu (x <= 10) | nếu x nhỏ hơn và bằng 10 |
nếu (x > 10 || y > 20) | nếu x lớn hơn 10 hoặc y lớn hơn 20 |
nếu (x <= 10 && y <= 20) | nếu x<=10 và y<=20 |
nếu !(x > 10 || y > 20) | nếu x<=10 vày<=20 |
nếu ( !( x <=10 || x >=20) ) | Nếu x>10 vàx<20 |
Hãy đặc biệt thận trọng khi sử dụng các biểu thức boolean!
Kiểu Boolean (bool) là một giá trị số nguyên đơn giản.
Chúng ta hãy xem if (...)
được diễn giải như thế nào:
-
if (...)
sẽ được trình biên dịch tính toán; nó tạo ra một ý nghĩa đúng hoặc sai. - Sự thật là: khi ( ... ) tạo ra bất kỳ giá trị nào khác 0 (tức là 0), thì
nếu ( .... )
sẽ có nghĩa là đúng. - Vì vậy: các biểu thức sau luôn đúng:
- nếu (1)
- nếu ( 10 )
- nếu (bất cứ kết quả nào khác 0)
Những lỗi thường gặp bạn phải chú ý:
Ví dụ 1:
int X = 10, Y=20; if (X = Y) brain.Screen.print("X và Y giống nhau.”); else brain.Screen.print("X và Y khác nhau.”);
Đầu ra: X và Y giống nhau.
Tại sao?
nếu (X = Y)
thực sự có nghĩa là:
- Gán Y cho X nên X có giá trị là 20
- Trình biên dịch diễn giải nó như thể (20) trong đó (20) đúng nhưng không phải (0).
Ví dụ 2:
int X = 0, Y=0; if (X = Y) brain.Screen.print("X và Y giống nhau.”); else brain.Screen.print("X và Y khác nhau.”);
Đầu ra: X và Y khác nhau.
Tại sao?
nếu (X = Y)
thực sự có nghĩa là:
- Gán Y cho X nên X có giá trị 0 (không).
- Trình biên dịch diễn giải nó là: (0) là sai.