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

Левее робота есть закрашенная клетка, закрасить все клетки между роботом и этой клеткой и вернуться назад программа кумир! надо алгоритм

👇
Ответ:
котик963
котик963
29.02.2020
Хорошо, я готов выступить в роли школьного учителя и помочь вам с вашим вопросом.

Алгоритм, которым мы будем оперировать, будет следующий:

1. Проверяем, есть ли клетка левее робота, которую нужно закрасить. Если нет, то заканчиваем программу.

2. Если есть, то двигаем робота на одну клетку влево.

3. Закрашиваем текущую клетку.

4. Проверяем, снова есть ли клетка левее робота, которую нужно закрасить. Если нет, то заканчиваем программу.

5. Если есть, то повторяем шаги 2-4 до тех пор, пока не закрасим все клетки между роботом и этой первой закрашенной клеткой.

6. Когда все клетки закрашены, роботу нужно вернуться назад. Для этого мы можем просто повернуть его на 180 градусов и проделать обратное движение. То есть, выполнить шаги 2-4 в обратном порядке.

Приведу пример работы этого алгоритма на конкретной сетке. Предположим, у нас есть следующая сетка:

[ ][ ][x][ ][ ]
[ ][ ][x][ ][ ]
[ ][ ][R][ ][ ]
[ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ]

Здесь "R" обозначает текущую позицию робота, который находится посередине, и "x" обозначает закрашенную клетку, которую нужно найти и закрасить.

Шаг 1: Проверяем, есть ли клетка левее робота, которую нужно закрасить. В данном случае есть, поскольку есть закрашенная клетка в этом направлении.

Шаг 2: Двигаем робота на одну клетку влево.

[ ][ ][ ][x][ ]
[ ][ ][ ][x][ ]
[ ][ ][R][ ][ ]
[ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ]

Шаг 3: Закрашиваем текущую клетку.

[ ][ ][ ][x][ ]
[ ][ ][ ][x][ ]
[ ][ ][R][ ][ ]
[ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ]

Шаг 4: Проверяем, снова есть ли клетка левее робота, которую нужно закрасить. В данном случае нет, поскольку мы нашли все закрашенные клетки по пути.

Шаг 5: Заканчиваем программу, поскольку все клетки между роботом и первой закрашенной клеткой уже закрашены.

Шаг 6: Роботу нужно вернуться назад. Для этого мы поворачиваем его на 180 градусов и двигаем его обратно вправо.

[ ][ ][ ][x][ ]
[ ][ ][ ][x][ ]
[ ][ ][R][ ][ ]
[ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ]

[ ][ ][x][ ][ ]
[ ][ ][x][ ][ ]
[ ][ ][R][ ][ ]
[ ][ ][ ][ ][ ]
[ ][ ][ ][ ][ ]

Здесь робот возвращается на свою исходную позицию.

Этот алгоритм позволяет роботу найти и закрасить все клетки между его текущей позицией и первой закрашенной клеткой слева, а затем вернуться на свое первоначальное положение.
4,6(74 оценок)
Проверить ответ в нейросети
Это интересно:
Новые ответы от MOGZ: Другие предметы

MOGZ ответил

Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ