МБОУ Грушевская СОШ Аксайского района Ростовской области
Учитель информатики и ИКТ Чайченков Сергей Викторович
Исполнитель Робот Цикл «ПОКА»
Применение системы «Исполнители» (К.Поляков, http://kpolyakov.narod.ru )
при изучении раздела «Алгоритмика» пропедевтического курса Информатики и ИКТ
УМК Босовой Л.Л., 7 класс
С.В.Чайченков, 2012
Давайте вспомним
- Неформальный исполнитель – это …
- Приведите примеры неформальных исполнителей …
- Формальный исполнитель – это …
- Приведите примеры формальных исполнителей
- Опишите исполнителя Робота по плану:
1) Имя 2) Круг решаемых задач 3) Среда 4) СКИ 5) Система отказов 6) Режимы работы
С.В.Чайченков, 2012
Алгоритмы с обратной связью
Робот может получать информацию об окружающей обстановке с помощью датчиков, которые выдают ответ "Да" или "Нет" ("истинно" или "ложно") на вопросы-команды.
Робот может проверять следующие простые условия :
слева_стена
справа_стена
впереди_стена
сзади_стена
эти команды определяют, есть ли стена в ближайшей клетке в указанном направлении
слева_клумба
справа_клумба
впереди_клумба
сзади_клумба
эти команды определяют, есть ли клумба в соседней клетке в указанном направлении
слева_свободно
справа_свободно
впереди_свободно
сзади_свободно
эти команды определяют, свободна ли ближайшая клетка в указанном направлении (Робот получает ответ "Да", если там нет стены и нет клумбы)
грядка
клумба
база
эти команды определяют, является ли клетка, в которой стоит Робот, грядкой клумбой или Базой
С.В.Чайченков, 2012
Цикл «Пока»
пока ( условие )
{
команды ;
}
условие
нет
да
команды
(тело цикла)
С.В.Чайченков, 2012
Пример задачи с циклом «пока»
Составить программу, после выполнения которой Робот посадит цветы в прямолинейную грядку неизвестной длины до стены и вернется на Базу.
Длинная_клумба
{
пока ( впереди_свободно )
{
вперед ( 1 );
посади ;
}
налево ;
вперед ( 1 );
налево ;
пока ( слева_клумба )
{
вперед ( 1 );
}
налево ; вперед ( 1 );
}
С.В.Чайченков, 2012
Примеры ошибок в циклах «пока»
С.В.Чайченков, 2012
Составные условия
Составные условия образуются из простых условий добавлением логических операций И , ИЛИ , НЕ .
Пусть А , В – простые условия.
Составное условие ( А и В ) будет выполняться только тогда, когда выполняются каждое из простых условий.
Составное условие ( А или В ) будет выполняться тогда, когда выполняется хотя бы одно из простых условий.
Составное условие ( не А ) будет выполняться, когда не выполняется простое условие А .
С.В.Чайченков, 2012
Практическая работа
Пример 1
Составить программу, после выполнения которой Робот посадит цветы в прямом коридоре неизвестной длины и вернется на Базу.
Клумба_в_коридоре
{
вперед ( 1 );
пока ( слева_стена и справа_стена )
{
посади ; вперед ( 1 );
}
налево ; вперед ( 2 );
налево ; вперед ( 1 );
пока ( слева_стена )
{
вперед ( 1 );
}
налево ; вперед ( 2 );
}
С.В.Чайченков, 2012
Практическая работа
Пример 2
Составить программу, после выполнения которой Робот посадит цветы в прямом коридоре с проходами неизвестной длины и вернется на Базу.
Клумба_в_коридоре2
{
вперед ( 1 );
пока ( слева_стена или справа_стена )
{
посади ; вперед ( 1 );
}
налево ; вперед ( 2 );
налево ; вперед ( 1 );
пока ( не база ) вперед ( 1 );
}
С.В.Чайченков, 2012
Домашнее задание
§ 3.3 стр. 137-144
РТ №30 стр. 105, учебник №10 стр. 150
Напишите программу, с помощью которой Робот посадит цветы в грядке до уже посаженной клумбы и вернется в исходное положение.
С.В.Чайченков, 2012
С.В.Чайченков, 2012