Вопрос:

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

Ответ:

Алгоритм для Робота:


alg
  нач
    нц пока справа свободно
      вправо
    кц
    нц 6 раз
      вниз
      закрасить
      нц пока слева свободно
        влево
      кц
      если не снизу стена то
        вниз
        закрасить
        нц пока справа свободно
          вправо
        кц
      все
    кц
  кон

Пояснения к алгоритму: 1. `нц пока справа свободно вправо кц`: Этот цикл двигает Робота вправо до тех пор, пока справа от него не будет стена. Таким образом, Робот перемещается вправо от вертикальной стены. 2. `нц 6 раз ... кц`: Этот цикл повторяется 6 раз, обеспечивая проход Робота вниз по заданному участку. 3. `вниз`: Робот спускается на одну клетку вниз. 4. `закрасить`: Робот закрашивает текущую клетку. 5. `нц пока слева свободно влево кц`: Этот цикл двигает Робота влево до тех пор, пока слева от него не будет стена. Таким образом, Робот возвращается к вертикальной стене. 6. `если не снизу стена то ... все`: Это условие проверяет, есть ли стена снизу. Если стены нет, то Робот спускается вниз, закрашивает клетку и снова двигается вправо, пока не достигнет правой стены. Этот алгоритм обеспечивает закрашивание всех клеток, расположенных непосредственно правее вертикальной стены и ниже правой горизонтальной стены, как показано на рисунке.
Смотреть решения всех заданий с фото
Подать жалобу Правообладателю

Похожие