КУМИР. РОБОТ. (ЦИКЛ ПОКА)
Учитель Малясова Л.Г.
Малясова Л.Г.
ПРИМЕР:
использовать Робот
алг
нач
· вправо
· вниз
· влево
· вверх
· закрасить
кон
Малясова Л.Г.
КОМАНДЫ ЦИКЛИЧЕСКИХ АЛГОРИТМОВ
нц число повторений раз
· тело цикла (последовательность команд)
кц
нц пока условие
· тело цикла (последовательность команд)
кц
нц для i от i1 до i2
· тело цикла (последовательность команд)
кц
Малясова Л.Г.
ЗАДАЧА 1 НА ПОЛЕ РОБОТА НЕТ СТЕН И ЗАКРАШЕННЫХ КЛЕТОК. СКОЛЬКО КЛЕТОК БУДЕТ ЗАКРАШЕНО ПОСЛЕ ВЫПОЛНЕНИЯ СЛЕДУЮЩИХ КОМАНД:
- закрасить
- вправо
- вверх
- закрасить
- вправо
- закрасить
- вверх
- закрасить
- закрасить
- вправо
- закрасить
- вправо
- закрасить
- закрасить
- вправо
- вправо
- закрасить
- закрасить
- закрасить
- вправо
Малясова Л.Г.
ЗАДАЧА 4
- Петя составил алгоритм, а Коля стер в нем одну команду:
алг прогулка
д ано на поле Робота стен нет
надо Робот погулял и вернулся в исходное положение
нач
| вверх
| вправо
| ???
| вниз
| влево
| влево
кон
Какую команду стер Коля?
Малясова Л.Г.
ЗАДАЧА 5 - 6
- Петя составил алгоритм, при выполнении которого Робот вернулся в исходное положение. Коля стер одну из команд. При выполнении Колиного алгоритма Робот также вернулся в исходное положение. Какую команду стер Коля?
- Петя составил алгоритм, переводящий Робота из клетки А в клетку Б с закрашиванием каких-то клеток. Что должен сделать Коля с этим алгоритмом, чтобы получить алгоритм, переводящий Робота из Б в А и закрашивающий те же клетки.
Малясова Л.Г.
ЦИКЛ ПОКА
нц пока условие
· тело цикла (последовательность команд)
кц
Малясова Л.Г.
10 КОМАНД ПРОВЕРКИ УСЛОВИЙ
- сверху стена
- сверху свободно
- снизу стена
- снизу свободно
- справа стена
- справа свободно
- слева стена
- слева свободно
- клетка закрашена
- клетка чистая
Малясова Л.Г.
ЗАКРАШИВАНИЕ РЯДА ДО СТЕНЫ
алг закрасить ряд вправо до стены и вернуться
нач
нц пока справа свободно
закрасить; вправо
кц
закрасить
нц пока клетка закрашена
влево
кц
вправо
кон
Малясова Л.Г.
ЗАКРАШИВАНИЕ ГОРИЗОНТАЛЬНОГО КОРИДОРА ПРОИЗВОЛЬНОЙ ДЛИНЫ, РОБОТ ГДЕ-ТО В КОРИДОРЕ
алг закрасить коридор
нач
нц пока снизу стена
влево
кц
вправо
нц пока снизу стена
закрасить; вправо
кц
кон
Малясова Л.Г.
ЗАДАНИЯ
- Закрасить клетки у стен прямоугольника, робот где-то внутри прямоугольника
- Левее робота есть закрашенная клетка, закрасить все клетки между роботом и этой клеткой и вернуться назад
- Закрасить вертикальный коридор неизвестной длины, робот где-то в коридоре
- Робот в клетке над горизонтальной стеной неизвестной длины, закрасить все клетки вокруг стены
Малясова Л.Г.
использовать Робот
алг
нач
нц пока снизу свободно
нц пока справа свободно
вниз;
закрасить; вправо;
закрасить; вверх;
закрасить; вправо;
закрасить; вправо
кц
вниз; вниз; вниз
нц пока слева свободно
влево
кц
кц
кон
Малясова Л.Г.
использовать Робот
алг
нач
нц пока снизу свободно
вниз; закрасить; вниз
вправо; закрасить; вправо
вверх; закрасить; вверх; влево;
закрасить; вправо
вправо;
нц пока справа свободно
вправо; вниз; закрасить;
вниз; вправо; закрасить; вправо
вверх; закрасить; вверх; влево;
закрасить; вправо
вправо;
кц
вниз; вниз; вниз;
нц пока слева свободно
влево
кц
кц
кон
Малясова Л.Г.
ЗАДАЧИ.
- В горизонтальном коридоре есть тупики снизу размером в 1 клетку, робот в левой клетке коридора. Вывести робот из коридора вправо и закрасить тупики.
- На поле нет стен. В ряду из 10 клеток правее робота некоторые клетки закрашены. Закрасить клетки ниже каждой закрашенной.
- Робот находится внутри прямоугольника. Некоторые клетки в левой вертикали прямоугольника закрашены. Закрасить соответствующие им клетки в правой вертикали.
Малясова Л.Г.
- Дано : На поле Робота горизонтальный коридор шириной в одну клетку. Коридор имеет выступы-ответвления вниз произвольной длины, ширины — в одну клетку. Ответвления заканчиваются тупиком. Робот находится в одном из ответвлений.
- Надо : Робот закрасил коридор и все ответвления и вышел из коридора влево.
Малясова Л.Г.
Малясова Л.Г.
алг
нач
нц пока сверху свободно
вверх
кц
нц пока сверху стена
вправо
кц
влево
нц пока сверху стена
если снизу свободно
то нц пока снизу свободно
вниз
кц
нц пока сверху свободно
закрасить; вверх
кц
все
закрасить;влево
кц
кон
Малясова Л.Г.
КОМАНДЫ УСЛОВНЫХ АЛГОРИТМОВ
выбор условие
· при условие 1: серия 1
· при условие 2: серия 2
· . . .
· при условие n: серия n
· иначе серия n+1
все