Операторы#
Введение#
The Operator blocks in VEXcode 123 help the robot work with numbers and words. These blocks can solve math problems, compare values, evaluating if conditions are true or false, and working with strings. Strings can be used to print values and words to the Console in VEXcode 123.
Ниже приведён список доступных блоков:
математический оператор – Выполняет сложение, вычитание, умножение или деление.
оператор сравнения – Сравнивает два значения с помощью операторов «больше», «меньше» или «равно».
логический оператор – Оценивает несколько условий с помощью операторов И, ИЛИ или .
оператор не – Инвертирует логическое значение.
оператор диапазона – Проверяет, попадает ли число в заданный диапазон.
выбрать случайный – Генерирует случайное число в заданном диапазоне.
округлить число – Округляет число до ближайшего целого числа.
математические функции – Применяет такие операции, как извлечение квадратного корня, тригонометрия, логарифмы и возведение в степень.
остаток – Сообщает об остатке операции подразделения.
join – Объединяет две строки в одну.
буква – Извлекает символ из строки по позиции.
длина – Сообщает количество символов в строке.
содержит – Проверяет, содержит ли строка определенное слово или символ.
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]>
остановить движение
логический оператор#
Логический оператор (Boolean) сообщает, является ли логическое условие между несколькими значениями истинным или ложным.
Истинно – Логическое условие выполнено.
Ложно – Логическое условие не выполнено.
<<> [и v] <>>
Параметр |
Описание |
|---|---|
условие 1 |
Первое логическое условие, которое нужно проверить. |
оператор |
Логический оператор: and выдает True, если оба условия истинны. or выдает True, если хотя бы одно условие истинно. |
условие 2 |
Второе логическое условие для проверки. |
Пример
при запуске
[Display if a red object is detected.]
вечно
очистить все строки
если <<датчик Eye нашел объект?> [и v] <датчик Eye обнаружил [красный v]?>> то
вывести [Red object found!] ▶
конец
конец
не оператор#
Логический блок not operator инвертирует результат логического блока. Если входное значение равно True, он выдает False, а если входное значение равно False, он выдает True.
Истина – В этом случае при вводе значения обычно будет отображаться Ложь.
Ложь – В этом случае в качестве входного условия обычно выдается Истина.
<не <>>
Параметр |
Описание |
|---|---|
состояние |
Логическое условие, которое необходимо инвертировать. |
Пример
при запуске
[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]
вечно
очистить все строки
если <[270] [math_greater_than v] (Курс движения в градусах) [math_less_than v] [90]> то
вывести [Facing forward] ▶
иначе
вывести [Facing backward] ▶
выбрать случайным образом#
Блок вывода случайный выбор выводит случайное положительное или отрицательное число в диапазоне от минимального до максимального значения. Он может возвращать как минимальное, так и максимальное значение. Например, выбор числа от 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] знаков после запятой) ▶
математические функции#
Блок обработки математических функций применяет выбранную математическую функцию к заданному числу и возвращает результат. Он поддерживает такие операции, как вычисление абсолютного значения, округление, извлечение квадратного корня, тригонометрические функции, логарифмы и возведение в степень.
[abs v] от [0]
Параметр |
Описание |
|---|---|
функция |
Математическая операция, применяемая к входному значению:
|
число |
Число, к которому следует применить функцию. |
Пример
при запуске
[Display the square root of 16.]
вывести ([sqrt v] от [16]) ▶
остаток#
Блок отчета об остатке сообщает остаток от деления между двумя значениями.
(остаток от деления [0] / [0])
Параметр |
Описание |
|---|---|
дивиденды |
Число, на которое нужно разделить. |
делитель |
Число, на которое нужно разделить. |
Пример
при запуске
[Display the remainder of 10 / 3.]
вывести (остаток от деления [10] / [3]) ▶
присоединиться#
Блок обработки запросов join выводит одну строку, объединяющую две входные строки.
(объединить [apple] [banana])
параметр |
описание |
|---|---|
строка 1 |
Первая строка для объединения. |
строка 2 |
Вторая строка для объединения. |
при запуске
[Display "VEXcode" on the Console.]
вывести (объединить [VEX] [code]) ▶
письмо#
Блок обработки писем выводит односимвольную строку, начиная с указанной позиции в заданной строке.
(символ [1] строки [apple])
параметр |
описание |
|---|---|
позиция |
Позиция символа в строке (начиная с 1). |
нить |
Строка, из которой нужно извлечь букву. |
при запуске
[Display the first letter of "Robot".]
вывести (символ (1) строки [Robot]) ▶
длина#
Блок length выводит количество символов в указанной строке, включая пробелы.
(длина [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 отображает числовое значение, преобразованное в указанный тип, либо в текст, либо в число.
текст – Преобразует число в строку. Для работы с блоками строковых операторов числа должны быть в строковом формате.
number – Преобразует число в десятичное значение.
(преобразовать [0] в [текст v])
параметр |
описание |
|---|---|
ценить |
Число для конвертации. |
тип |
Тип данных для преобразования числа: text преобразует значение в строку, а number преобразует значение в десятичное число. |
Пример
при запуске
[Display the heading.]
вывести (объединить [Heading: ] (преобразовать (Курс движения в градусах) в [текст v])) ▶