1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Босова 7-9 класс (Сборник упр-й)
Упр.3.86 ГДЗ Сборник упражнений Босова 7-9 класс (Информатика)
Босова, Аквилянов
8 класс
Класс
8
Предмет
Информатика
Автор
Босова, Аквилянов

Упр.3.86 ГДЗ Сборник упражнений Босова 7-9 класс (Информатика)

Задача
  1. На бесконечном клетчатом поле имеется горизонтальная стена. Длина стены неизвестна. Робот находится в одной из клеток, примыкающих к стене сверху. На рисунке указан один из возможных вариантов расположения Робота и стены (Робот обозначен буквой «Р»). Робот должен закрасить все клетки, примыкающие к стене сверху. Конечное положение Робота значения не имеет. Опишите укрупнёнными блоками план действий Робота по решению поставленной задачи.
  2. Где-то в поле Робота находятся две вертикальные стены равной, но неизвестной длины, расположенные одна напротив другой. Робот находится в произвольной клетке справа от правой стены, причём напротив неё. На рисунке указан один из возможных вариантов расположения Робота и стен (Робот обозначен буквой «Р»). Робот приступил к исполнению следующего алгоритма. Каким будет результат исполнения данного алгоритма? Изобразите его на рисунке. Опишите алгоритм действий Робота укрупнёнными шагами.
  3. На бесконечном клетчатом поле имеется горизонтальная стена. Длина стены неизвестна. Робот находится в одной из клеток, примыкающих к стене сверху. Точное положение Робота неизвестно. На рисунке указан один из возможных вариантов расположения Робота и стены (Робот обозначен буквой «Р»). Робот должен закрасить через одну клетки, примыкающие к стене сверху, начиная с самой левой клетки. Конечное положение Робота значения не имеет. Алгоритм должен решать задачу для стены произвольного размера и любого допустимого начального положения Робота. При составлении алгоритма можно использовать следующее разбиение задачи на подзадачи:
    • перевести Робота в исходное положение — крайнюю левую клетку, примыкающую к стене сверху;
    • двигаться слева направо, закрасить через одну все клетки, примыкающие к стене.

    Напишите алгоритм.

  4. Робот находится в произвольной точке внутри прямоугольного огороженного стенами участка клетчатого поля. Размеры прямоугольника неизвестны. Напишите алгоритм, с помощью которого Робот закрасит все клетки, примыкающие к нижней стороне прямоугольника. Конечное положение Робота может быть произвольным.
  5. Робот находится в произвольной точке внутри прямоугольного огороженного стенами участка клетчатого поля. Размеры прямоугольника неизвестны. Напишите алгоритм, с помощью которого Робот закрасит все клетки, примыкающие к сторонам прямоугольника, и вернётся в начальное положение. Для запоминания начального положения Робота введены две переменные: $$k_1$$ и $$k_2$$.
Подробный ответ

1) Сначала Робот должен дойти до конца стены, затем перейти в первую клетку над стеной и закрасить все клетки, примыкающие к стене сверху.

План действий:

  1. Найти конец стены.
  2. Встать на первую клетку над стеной.
  3. Закрасить все клетки, примыкающие к стене сверху.

2) Алгоритм сначала подводит Робота к правой стене, затем поднимает его до верхнего конца стены. После этого Робот закрашивает все клетки между стенами.

Результат: будут закрашены все клетки в прямоугольной области между двумя вертикальными стенами на уровне от верхнего конца стен до нижнего конца.

Укрупнённые шаги:

  1. Подойти к правой стене.
  2. Подняться по стене до верхнего её конца.
  3. Закрасить все клетки между стенами.

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

использовать Робот
алг
нач
  нц пока снизу не свободно
    влево
  кц
  вправо
  нц пока снизу не свободно
    закрасить
    вправо; вправо
  кц
кон

4) Чтобы закрасить все клетки у нижней стороны прямоугольника, Робот сначала должен дойти до левой нижней клетки, затем — до нижней стороны, после чего пройти вдоль неё, закрашивая клетки.

использовать Робот
алг
нач
  нц пока слева свободно
    влево
  кц
  нц пока снизу свободно
    вниз
  кц
  нц пока справа свободно
    закрасить; вправо
  кц
  закрасить
кон

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

использовать Робот
алг
нач
  цел k1, k2
  k1:=0; k2:=0;
  нц пока слева свободно
    влево
    k1:=k1+1
  кц
  нц пока снизу свободно
    вниз
    k2:=k2+1
  кц
  нц пока справа свободно
    закрасить; вправо
  кц
  закрасить
  нц пока сверху свободно
    вверх; закрасить
  кц
  нц пока слева свободно
    влево; закрасить
  кц
  нц пока снизу свободно
    вниз; закрасить
  кц
  нц k1 раз
    вправо
  кц
  нц k2 раз
    вверх
  кц
кон

Иллюстрация к решению «Упр.3.86 ГДЗ Сборник упражнений Босова 7-9 класс (Информатика)», 2



Общая оценка
4.6 / 5
Другие учебники
Другие предметы