Робот находится в произвольной точке внутри прямоугольного огороженного стенами участка клетчатого
поля. размеры прямоугольника неизвестны. напиши
те алгоритм, с которого робот закрасит все
клетки, примыкающие к сторонам примоугольника, и вернется в начальное положение​

Валерия1704 Валерия1704    3   25.12.2019 16:23    67

Ответы
arzuvelieva arzuvelieva  16.01.2024 12:46
Хорошо, давайте рассмотрим алгоритм для решения этой задачи. Для начала, нам нужно найти границы прямоугольника.

1. Шаг 1: Двигаемся вверх, пока не достигнем стены.
- Для этого мы будем повторять следующие шаги, пока не достигнем стены:
а) Проверяем, находится ли перед нами стена. Если да, то двигаемся вправо.
б) Если перед нами нет стены, то двигаемся вверх.

2. Шаг 2: Двигаемся вправо, пока не достигнем стены.
- Для этого мы будем повторять следующие шаги, пока не достигнем стены:
а) Проверяем, находится ли справа от нас стена. Если да, то двигаемся вниз.
б) Если справа от нас нет стены, то двигаемся вправо.

3. Шаг 3: Двигаемся вниз, пока не достигнем стены.
- Для этого мы будем повторять следующие шаги, пока не достигнем стены:
а) Проверяем, находится ли перед нами стена. Если да, то двигаемся влево.
б) Если перед нами нет стены, то двигаемся вниз.

4. Шаг 4: Двигаемся влево, пока не достигнем стены.
- Для этого мы будем повторять следующие шаги, пока не достигнем стены:
а) Проверяем, находится ли слева от нас стена. Если да, то двигаемся вверх.
б) Если слева от нас нет стены, то двигаемся влево.

5. Шаг 5: Возвращаемся в начальное положение.
- Для этого мы повторяем Шаги 1-4, но в обратном порядке. То есть двигаемся влево, вниз, вправо и вверх, чтобы вернуться в начальную точку.

Таким образом, пошагово решение задачи будет выглядеть следующим образом:

1. Найти границы прямоугольника:
- Повторять Шаг 1, пока не достигнем стены.
- Повторять Шаг 2, пока не достигнем стены.
- Повторять Шаг 3, пока не достигнем стены.
- Повторять Шаг 4, пока не достигнем стены.

2. Вернуться в начальное положение:
- Повторить Шаг 4, но в обратном порядке.
- Повторить Шаг 3, но в обратном порядке.
- Повторить Шаг 2, но в обратном порядке.
- Повторить Шаг 1, но в обратном порядке.

Алгоритм выше гарантирует, что все клетки, примыкающие к сторонам прямоугольника, будут закрашены, и робот вернется в начальное положение.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика