操作員#

介紹#

VEXcode V5 中的操作模組可以幫助機器人處理數字和文字。這些模組可以解決數學問題、比較數值、判斷條件真假、處理字串。字串可以用來列印數值和文字。

以下是可用模組列表:

  • 數學運算子 – 執行加法、減法、乘法或除法。

  • 比較運算子 – 使用大於、小於或等於運算子比較兩個值。

  • 邏輯運算子 – 使用 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

第二個要比較的值。

例子

當開始時
[Turn right until the heading reaches 90 degrees.]
向 [右 v] 轉
等待 [0.5] 秒
等待直到 <(行駛航向(度)) [math_greater_than v] [90]>
停止行駛

邏輯運算符#

邏輯運算子布林區塊報告多個值之間的邏輯條件是真還是假。

  • 正確 – 邏輯條件已滿足。

  • 錯誤 – 邏輯條件不滿足。

邏輯運算符布林塊。#
<<> [且 v] <>>

範圍

描述

條件 1

第一個需要評估的布林條件。

操作員

要使用的邏輯運算子:and 如果兩個條件都為True,則結果為True。 or 若至少有一個條件為True,則結果為True。

條件 2

需要評估的第二個布林條件。

例子

當開始時
[Display if the ▼ and B Controller buttons are pressed.]
永遠
清除螢幕
將游標設定到螢幕第 [1] 列第 [1] 欄
如果 <<[Controller1 v] [▼ v] 按下?> [且 v] <[Controller1 v] [B v] 按下?>> 則
在螢幕上列印 [Buttons pressed!] ▶
結束
結束

非操作員#

非運算子布林區塊會反轉另一個布林區塊的結果。如果輸入為真,則傳回假;如果輸入為假,則傳回真。

  • 正確 – 輸入條件通常會報告 錯誤。

  • 錯誤 – 輸入條件通常會報告 正確。

非運算符布爾塊。#
<非 <>>

範圍

描述

狀態

要取反的布林條件。

例子

當開始時
[Turn until the robot is facing left. ]
永遠
如果 <非 <(行駛航向(度)) [math_greater_than v] [270]>> 則
向 [右 v] 轉
否則
停止行駛

靶場操作員#

範圍運算子布林區塊報告一個值是否在指定的範圍內。

  • 真 – 如果該值在範圍內。

  • 錯誤 – 如果該值超出範圍。

範圍運算符布爾塊。#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

範圍

描述

第一營運商

比較運算子:

  • < - 小於
  • ≤ - 小於或等於
  • - 大於
  • ≥ - 大於或等於

價值

要檢查的值。

第二操作員

比較運算子:

  • < - 小於
  • ≤ - 小於或等於
  • - 大於
  • ≥ - 大於或等於

例子

當開始時
[Turn and display when facing forward or back. ]
向 [右 v] 轉 [360] 度 ◀ 且不等待
永遠
清除螢幕
將游標設定到螢幕第 [1] 列第 [1] 欄
如果 <[90] [math_less_than v] (行駛航向(度)) [math_less_than v] [270]> 則
在螢幕上列印 [Facing backward!] ▶
否則
在螢幕上列印 [Facing forward!] ▶

隨機#

「隨機選擇」報告模組會報告一個介於最小值和最大值之間的隨機正數或負數。它可以同時傳回最小值和最大值。例如,選擇 1 到 10 可以傳回 1 到 10 之間的任意整數。

隨機選擇記者模組。#
隨機取 [1] 到 [10]

參數

描述

最小

可以選擇的最小數字。

最大限度

可以選擇的最大數字。

範例

當開始時
[Display a number between 1 and 10.]
在螢幕上列印 (隨機取 [1] 到 [10]) ▶

整數#

「四捨五入」報告模組會依照標準舍入規則,將給定的數字四捨五入到最接近的整數:

  • 如果小數部分為 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]

範圍

描述

功能

对输入值应用的数学运算:

  • abs - 绝对值
  • floor - 向下取整
  • ceiling - 向上取整
  • sqrt - 平方根
  • sin - 正弦
  • cos - 余弦
  • tan - 正切
  • asin - 反正弦
  • acos - 反余弦
  • atan - 反正切
  • ln - 自然对数
  • log - 以 10 为底的对数
  • e^ - 欧拉数的幂
  • 10^ - 10 的幂
  • negative - 负值
  • 的负数

數位

要套用該函數的數字。

例子

當開始時
[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 screen.]
在螢幕上列印 (連接 [VEX] [code]) ▶

信#

字母報告區塊報告給定字串中指定位置的單一字元字串。

《信使報》記者專欄。#
([apple] 的第 [1] 個字母)

範圍

描述

位置

字串中字元的位置(從 1 開始)。

細繩

要從中提取字母的字串。

當開始時
[Display the first letter of "Robot".]
在螢幕上列印 ([Robot] 的第 (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])

範圍

描述

價值

要轉換的數字。

類型

若要將數字轉換為以下類型:

  • 文本
  • 數字

例子

當開始時 :: hat events
[Display the robot's heading as it turns.]
向 [右 v] 轉
永遠
清除所有列
列印 (連接 [Currently facing: ] (將 (行駛航向(度)) 轉換為 [文字 v])) ▶
等待 [0.5] 秒