操作員#
介紹#
VEXcode AIR 中的操作模組可以幫助無人機處理數字和文字。這些模組可以解決數學問題、比較數值、判斷條件真假、處理字串。字串可以用來列印數值和文字。
以下是可用模組列表:
數學運算子 — 執行加法、減法、乘法或除法。
比較運算子 — 使用大於、小於或等於運算子比較兩個值。
邏輯運算子 — 使用 and 或 or 來評估多個條件。
非運算子 — 反轉布林值。
範圍運算子 — 檢查一個數字是否在某個範圍內。
pick random — 產生指定範圍內的隨機數。
round number — 將數字四捨五入到最接近的整數。
數學函數 — 應用平方根、三角函數、對數和指數運算等運算。
atan2 — 計算 Y/X 的反正切值。
餘數 — 報告除法運算的餘數。
join – 將兩個字串合併為一個字串。
letter – 按位置從字串中提取字元。
length – 報告字串中的字元數。
contains – 檢查字串是否包含特定單字或字元。
convert – 將數字轉換為文字、整數或小數。
數學運算符#
數學運算符 報告區塊對運算符兩側的值執行基本數學運算。它根據項目的列印精度返回結果,預設為 0 位小數,但可以使用 設定螢幕列印精確度 或 設定控制台列印精確度 區塊進行調整。
([0] [math_plus v] [0])
參數 |
描述 |
|---|---|
值 1 |
運算中使用的第一個數字。 |
操作員 |
使用的數學運算子:
|
值 2 |
運算中使用的第二個數字。 |
例子
當開始時
[Perform basic addition and show two decimal places.]
在主控台設定列印精度為 [0.01 v]
在主控台列印 ([10] [math_plus v] [10.5]) ▶
比較算子#
比較運算子布林區塊報告兩個值之間的比較結果是真還是假。
正確 – 比較結果正確(例如,5 > 3 回傳 正確)。
錯誤 – 比較不正確(例如,2 ≥ 5 回傳 錯誤)。
<[0] [math_equal v] [0]>
範圍 |
描述 |
|---|---|
值 1 |
首先要比較的值。 |
操作員 |
比較規則:
|
值 2 |
第二個要比較的值。 |
例子
當開始時
[Fly to position (0, 300, 500).]
起飛至 [500] [mm v] ▶
等待 (1) 秒
移動 [前方 v]
等待直到 <([y v] 位置([mm v])) [math_greater_than v] [300]>
等待 (1) 秒
降落 ▶
邏輯運算符#
邏輯運算子布林區塊報告多個值之間的邏輯條件是真還是假。
正確 – 邏輯條件已滿足。
錯誤 – 邏輯條件不滿足。
<<> [且 v] <>>
範圍 |
描述 |
|---|---|
條件 1 |
第一個需要評估的布林條件。 |
操作員 |
要使用的邏輯運算子:and 如果兩個條件都為True,則結果為True。 or 若至少有一個條件為True,則結果為True。 |
條件 2 |
需要評估的第二個布林條件。 |
例子
當開始時
[Display when buttons 5 and 7 are pressed together.]
等待直到 <<控制器按鈕 [5 v] 按下?> [且 v] <控制器按鈕 [7 v] 按下?>>
在主控台列印 [Both buttons pressed!] ▶
非操作員#
非運算子布林區塊會反轉另一個布林區塊的結果。如果輸入為真,則傳回假;如果輸入為假,則傳回真。
正確 – 輸入條件通常會報告 錯誤。
錯誤 – 輸入條件通常會報告 正確。
<非 <>>
範圍 |
描述 |
|---|---|
狀態 |
要取反的布林條件。 |
例子
當開始時
[Move with controller while button 5 is not pressed.]
起飛至 [500] [mm v] ▶
當 <非 <控制器按鈕 [5 v] 按下?>>
以控制器移動
結束
降落 ▶
靶場操作員#
範圍運算子布林區塊報告一個值是否在指定的範圍內。
真 – 如果該值在範圍內。
錯誤 – 如果該值超出範圍。
<[0] [math_less_than v] [0] [math_less_than v] [0]>
範圍 |
描述 |
|---|---|
第一營運商 |
比較運算子:
|
價值 |
要檢查的值。 |
第二操作員 |
比較運算子:
|
例子
當開始時
[Hover at approximately 1000mm then land.]
起飛至 [500] [mm v] ▶
爬升 [上升 v]
等待直到 <[1000] [math_less_than v] (altitude in [mm v]) [math_less_than v] [1100]>
懸停
等待 (3) 秒
降落 ▶
隨機#
「隨機選擇」報告模組會報告一個介於最小值和最大值之間的隨機正數或負數。它可以同時傳回最小值和最大值。例如,選擇 1 到 10 可以傳回 1 到 10 之間的任意整數。
隨機取 [1] 到 [10]
參數 |
描述 |
|---|---|
最小 |
可以選擇的最小數字。 |
最大限度 |
可以選擇的最大數字。 |
範例
當開始時
[Display a number between 1 and 10.]
在主控台列印 (隨機取 [1] 到 [10]) ▶
當開始時
[Display a decimal number between 1 and 10.5.]
在主控台設定列印精度為 [所有位數 v]
在主控台列印 (隨機取 [1] 到 [10.5]) ▶
整數#
「四捨五入」報告模組會依照標準舍入規則,將給定的數字四捨五入到最接近的整數:
如果小數部分為 0.5 或更大,則向上取整。
如果小數部分小於 0.5,則向下取整。
(將 [0] 四捨五入至 [0] 位小數)
範圍 |
描述 |
|---|---|
數位 |
要四捨五入的數字。 |
小數位數 |
四捨五入到小數點後的位數。 |
例子
當開始時
[Display the rounded result of 10 / 3.]
在主控台設定列印精度為 [0.01 v]
在主控台列印 (將 ([10] [math_division v] [3]) 四捨五入至 [1] 位小數) ▶
數學函數#
數學函數報告模組將選定的數學函數應用於給定的數字並傳回結果。它支援絕對值、四捨五入、平方根、三角函數、對數和指數運算等操作。
[0] 的 [abs v]
範圍 |
描述 |
|---|---|
功能 |
对输入值应用的数学运算:
|
數位 |
要套用該函數的數字。 |
例子
當開始時
[Display the square root of 16.]
在主控台列印 ([16] 的 [sqrt v]) ▶
atan2#
atan2 報告區塊以度為單位報告 Y/X 的反正切值,表示正 X 軸與點 (X, Y) 之間的角度。
(x 的 atan2:[4] y:[3])
範圍 |
描述 |
|---|---|
x |
從原點 (0,0) 測量的點的水平位置。 |
是 |
從原點 (0,0) 測量的點的垂直位置。 |
例子
當開始時
[Calculate the angle from current position (4, 3).]
在主控台列印 (x 的 atan2:[4] y:[3]) ▶
餘#
餘數報告區塊報告兩個值相除運算的餘數。
[0] / [0] 的餘數
範圍 |
描述 |
|---|---|
股利 |
待除數。 |
除數 |
要除以的數字。 |
例子
當開始時
[Display the remainder of 10 / 3.]
在主控台列印 ([10] / [3] 的餘數) ▶
加入#
join 報告區塊報告一個將兩個輸入字串組合在一起的單一字串。
(連接 [apple] [banana])
範圍 |
描述 |
|---|---|
字串 1 |
要合併的第一個字串。 |
字串 2 |
第二個要合併的字串。 |
例子
當開始時
[Display "VEXcode" on the Console.]
在主控台列印 (連接 [VEX] [code]) ▶
信#
字母報告區塊報告給定字串中指定位置的單一字元字串。
([apple] 的第 [1] 個字母)
範圍 |
描述 |
|---|---|
位置 |
字串中字元的位置(從 1 開始)。 |
細繩 |
要從中提取字母的字串。 |
例子
當開始時
[Display the first letter of "drone".]
在主控台列印 ([drone] 的第 (1) 個字母) ▶
長度#
長度報告區塊報告指定字串中的字元數,包括空格。
([apple] 的長度)
範圍 |
描述 |
|---|---|
細繩 |
用來測量長度的繩子。 |
例子
當開始時
[Count the number of characters in "VEX Robotics".]
在主控台列印 ([VEX Robotics] 的長度) ▶
包含#
contains 布林區塊報告指定的字串是否包含給定的單字或字元。
正確 – 該字串包含該特定單字或字元。
錯誤 – 該字串不包含該特定單字或字元。
<[apple] 包含 [a]?>
範圍 |
描述 |
|---|---|
細繩 |
要搜尋的主字串。 |
搜尋詞 |
要檢查的字串中的單字或字元。 |
例子
當開始時
[Check if "robotics" contains "bot".]
如果 <[robotics] 包含 [bot]?> 則
在主控台列印 [The word contains "bot".] ▶
否則
在主控台列印 [Not found.] ▶
結束
轉變#
convert 報告區塊會將數字轉換為指定類型(文字或數字)後的值進行報告。
text – 將數字轉換為字串。數字必須為字串格式才能與 字串運算子 程式碼區塊一起使用。
數字 – 將數字轉換為十進位值。
(將 [0] 轉換為 [文字 v])
範圍 |
描述 |
|---|---|
價值 |
要轉換的數字。 |
類型 |
若要將數字轉換為以下類型:
|
例子
當開始時
[Add any number to 5.]
詢問 [Give me a number.] 並等待
在主控台列印 ((將 (答案) 轉換為 [數字 v]) [math_plus v] [5]) ▶