Операции с данными

Числовые значения. Блок "Константа", блок "Переменная"

Среда программирования Lego Mindstorms позволяет обрабатывать в своих программах пять различных типов данных: "Текст", "Числовое значение", "Логическое значение", "Числовой массив", "Логический массив". Тип данных "Числовое значение" позволяет выполнять различные математические операции над числами. Числа в программе могут быть как положительными, так и отрицательными, быть целыми значениями или содержать десятичную дробь. Примеры: -15; 3,145; 8; -247,34.

Перед тем, как начать обрабатывать различные типы данных в программах, надо научиться их создавать и хранить. Для этих целей среда программирования Lego mindstorms предоставляет два вида программных блоков: "Переменная" и "Константа". Эти блоки позволяют создать в памяти робота специальные ячейки, позволяющие записывать, извлекать и редактировать различные типы данных. Программный блок "Константа" позволяет создавать ячейку памяти для хранения одного из пяти типов данных (1). Требуемое значение записывается в ячейку на этапе создания программы (2) и остается неизменным во время выполнения всей программы. Для получения значения, записанного в блок "Константа" используется "Вывод" (3).

В отличие от программного блока "Константа" - в блоке "Переменная" присутствуют два режима "Считывание" и "Записать" (1). Перед первым использованием необходимо задать имя переменной, выбрав параметр блока "Добавить переменную" (2). Имя переменной может содержать только заглавные и строчные буквы латинского алфавита, цифры, а также символы _ и -. Задать значение переменной можно, записав или передав число в параметр "Значение" (3).

Блок математика, блок округление

Для выполнения математических вычислений служит программный блок "Математика". Он позволяет выполнить выбранную математическую операцию (1) над двумя числами, заданными параметрами "a" и "b". В режимах "Абсолютная величина" и "Квадратный корень" для вычисления доступен только один параметр "a".

Отдельно следует остановиться на режиме "Дополнения". В этом режиме количество параметров для расчета увеличивается до четырех: "a", "b", "c" и "d". В параметр "Уравнение" (1) можно вписать любую произвольную формулу, производящую вычисления с этими параметрами.

Иногда возникает необходимость произвести округление результата вычисления. Например: при отладке программы, можно выводить на экран модуля округленные промежуточные расчеты, чтобы легче было визуально контролировать ход выполнения программы. Для этого предназначен программный блок "Округление". Режимы "До ближайшего", "Округлить к большему" и "Округлить к меньшему" производят округление до целого значения. В режиме "Отбросить дробную часть" можно задать количество остающихся знаков дробной части после запятой

Задача для самостоятельного выполнения.

Необходимо написать программу, рассчитывающую значение параметра "Градусы" для разворота робота

Примечание: требуется найти расстояние, которое должны проехать колеса робота. Для того, чтобы робот развернулся на 180 градусов - необходимо, чтобы правое и левое колеса, проехав определенный путь по окружности, поменялись местами. Как видим рисунка - каждое колесо при этом проедет ровно половину окружности с диаметром, равным расстоянию между центрами колес (красная линия на рисунке). Линейкой померяем расстояние между центрами колес. Для робота, собранного по инструкции, это расстояние равно 120 мм. Следовательно, умножив это значение на число Пи (3,14159) и разделив на 2, найдем расстояние, которое должно проехать каждое из колес нашего робота.