М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
KILLER435
KILLER435
02.05.2021 15:25 •  Информатика

Представьте, что робот находится на поле 150×150 см. Напротив него, на разном расстоянии, находятся 3 препятствия. Напишите программу, благодаря которой робот вычислит расстояние до каждого из объектов, сравнит полученные

данные и доедет до ближайшего объекта.

На следующем этапе он должен просчитать расстояние до

двух оставшихся объектов и снова доехать до ближайшего, а

после этого – до самого дальнего.

Попробуйте создать похожую программу на сайте LEGO

Mindstorm: https://makecode.mindstorms.com/#editor.

👇
Ответ:
nikkun80
nikkun80
02.05.2021
Хорошо, давайте разработаем программу для робота, чтобы он мог вычислить расстояние до объектов, сравнить полученные данные и добраться до ближайшего объекта. Шаг 1: Настройка поля и позиционирование объектов Прежде чем мы начнем программирование, на сайте LEGO Mindstorms установим поле размером 150x150 см и разместим три объекта на поле на разном расстоянии от робота. Шаг 2: Начало программы и инициализация переменных Откроем редактор программ на сайте LEGO Mindstorms и создадим новую программу полностью подходящую для выполнения задания. Для этого добавим блок "при запуске", который будет первым при запуске программы. Также создадим две переменные: - "расстояние_ближайший" для хранения расстояния до ближайшего объекта; - "направление_ближайший" для хранения направления до ближайшего объекта. Шаг 3: Определение первого ближайшего объекта Добавим цикл "повторять ни разу" и внутри него используем блок "измерить расстояние", чтобы робот определил расстояние до первого объекта. Затем сравним это расстояние с переменной "расстояние_ближайший". Если оно меньше, чем значение "расстояние_ближайший", то обновим значение "расстояние_ближайший" и присвоим переменной "направление_ближайший" текущее направление робота. Шаг 4: Определение второго ближайшего объекта Добавим вторую операцию измерения расстояния до второго объекта и определим его переменную "расстояние_ближайший" аналогично шагу 3. Шаг 5: Определение самого дальнего объекта Теперь добавим третью операцию измерения расстояния до третьего объекта и сравним его с переменными "расстояние_ближайший" и "направление_ближайший". Если расстояние больше, чем значение "расстояние_ближайший", то обновим значение "расстояние_ближайший" и присвоим переменной "направление_ближайший" текущее направление робота. Шаг 6: Доводка до ближайшего объекта С помощью блока "переместиться на расстояние" и значения "расстояние_ближайший" передвинем робота в направлении ближайшего объекта. Шаг 7: Повторение для оставшихся объектов Теперь мы повторим шаги с 3 по 6, чтобы робот снова вычислил ближайший объект из двух оставшихся. После определения второго ближайшего объекта, мы воспользуемся блоком "переместиться на расстояние" для доведения робота до него. Шаг 8: Доводка до самого дальнего объекта Далее, мы повторим шаги с 3 по 6 с оставшимся третьим объектом. После определения самого дальнего объекта, мы воспользуемся блоком "переместиться на расстояние" для доведения робота до него. Шаг 9: Завершение программы Выполнение задания завершено. Обычно в конце программы добавляют блок "конец", чтобы остановить выполнение программы. Программа должна выглядеть следующим образом: (Здесь я использовал некоторые блоки на сайте LEGO Mindstorms, но Вы также можете использовать аналогичные блоки из других программных средств) ``` при запуске установить значение расстояние_ближайший as 1000 установить значение направление_ближайший as 0 повторять ни разу измерить расстояние если (измеренное расстояние) < (расстояние_ближайший) установить значение расстояние_ближайший as (измеренное расстояние) установить значение направление_ближайший as (направление текущего объекта) повторять ни разу измерить расстояние если (измеренное расстояние) < (расстояние_ближайший) установить значение расстояние_ближайший as (измеренное расстояние) установить значение направление_ближайший as (направление текущего объекта) повторять ни разу измерить расстояние если (измеренное расстояние) > (расстояние_ближайший) установить значение расстояние_ближайший as (измеренное расстояние) установить значение направление_ближайший as (направление текущего объекта) переместиться на расстояние (расстояние_ближайший) повторять ни разу измерить расстояние если (измеренное расстояние) < (расстояние_ближайший) установить значение расстояние_ближайший as (измеренное расстояние) установить значение направление_ближайший as (направление текущего объекта) переместиться на расстояние (расстояние_ближайший) повторять ни разу измерить расстояние если (измеренное расстояние) < (расстояние_ближайший) установить значение расстояние_ближайший as (измеренное расстояние) установить значение направление_ближайший as (направление текущего объекта) переместиться на расстояние (расстояние_ближайший) конец ``` Теперь мы создали программу, которая позволяет роботу вычислить расстояние до каждого из трех объектов, сравнить полученные данные и добраться до ближайшего объекта. Затем робот вычислит расстояние до двух оставшихся объектов и доберется до ближайшего, а затем до самого дальнего объекта. Вы можете скопировать эту программу и загрузить ее на сайте LEGO Mindstorms, чтобы увидеть результаты.
4,7(83 оценок)
Проверить ответ в нейросети
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ