КУМИР

Урок 5. Цикл n раз

 

Сегодня ты научишься:

  •  составлять алгоритмы, содержащие циклическиую конструкцию.


 

  Создай обстановку для Робота в виде лабиринта:

 

Разработать алгоритм, который позволит провести Робота из клетки А в клетку Б не составит никакого труда.

Можно составить линейный алгоритм решения данной задачи:

 

А можно выделить блок поворяющихся команд в отдельный алгоритм "обход":

И использовать этот алгоритм в качестве вспомогательного:

После запустка программ результаты в первом и втором случае будут одинаковыми, но второй алгоритм получился более компактным.

Однако, есть еще один вариант решения данной задачи. Воспользуемся специальной командой алгоритмического языка - цикл n раз.

 

  Набери программу и убедись в её работоспособности:

Как видишь, получилась еще более компактная программа. 


 В общем виде цикл n раз записывается так:

нц число повторений раз
·
тело цикла (последовательность команд)
кц

Тело цикла может содержать одну или несколько команд, которые необходимо повторить n раз.


 

 

 Измени алгоритм из А в Б так, чтобы внутри цикла вызывался вспомогательный алгоритм "обход".  

 

Используя цикл n раз, можно составить алгоритмы для смещения Робота на заданное число клеток в заданном направлении, например:

 

 

 Составь ещё три алгоритма: алг вниз на (арг цел n), алг влево на (арг цел n) и алг вправо на (арг цел n).

 

В дальнейшем можно использовать эти алгоритмы как вспомогательные при решении различных задач.

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

 

 Набери программный код:

Обрати внимание, что после запуска этой программы в области вывода (в нижней части окна) появилось сообщение "Введите m:". Это означает, что Робот ждёт целое число - количество клеток, которые нужно будет закрасить. Введи с клавиатуры число и нажми Enter.

 

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

 

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

 Вот один из алгоритмов решения этой задачи:

 

 

 Дополни предложенный основной алгоритм - опиши вспомогательные алгоритмы:

алг закрасить ряд (арг цел m)

 и

алг вверх на (арг цел n)

Проверь работу своей программы. При вводе значений m=5, n=2 На поле Робота должен появиться такой прямоугольник:

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

.

Теперь можешь выполнить задания к уроку 5 из задачника, используя команду цикл n раз.

Дата последнего обновления страницы 25.12.2020
Сайт создан по технологии «Конструктор сайтов e-Publish»