Scratch/VCRobot v50
Код для проекта https://scratch.mit.edu/projects/162395866/
1) 1 сводный общий цикл контроля событий:
нажимы клавиш (кнопок) ручного управления действиями робота-пылесоса:
ход Вперед, поворот Налево, поворот Направо.
2) Наличие взаимного исключения действий клавиш (кнопок) управления:
Налево и Направо.
3) Объединение пар условий взаимного исключения в общие составные условия.
Содержание |
Сводный общий цикл
Л: Латиница / En: Английский язык
Скрипт (на светлом фоне)
forever if <key [up arrow v] pressed?> then if on edge, bounce move (n1) steps end if <<key [left arrow v] pressed?> and <not <key [right arrow v] pressed?>>> then turn @turnLeft (n2) degrees end if <<key [right arrow v] pressed?> and <not <key [left arrow v] pressed?>>> then turn @turnRight (n3) degrees
Псевдокод скрипта
+++++++++++++++++++++++++++++++++++
forever
if <key [up arrow v] pressed?> then
if on edge, bounce
move (n1) steps
end
if <key [left arrow v] pressed?> then
if <not <key [right arrow v] pressed?>> then
turn @turnLeft (n2) degrees
end
end
if <key [right arrow v] pressed?> then
if <not <key [left arrow v] pressed?>> then
turn @turnRight (n3) degrees
+++++++++++++++++++++++++++++++++++
К: Кириллица / Ru: Русский язык
Скрипт (на светлом фоне)
всегда если <клавиша [стрелка вверх v] нажата?> , то если на краю, оттолкнуться идти (n1) шагов конец если <<клавиша [стрелка влево v] нажата?> и <не <клавиша [стрелка направо V] нажата>>>, то повернуть @turnLeft на (n2) градусов конец если <<клавиша [стрелка направо v] нажата?> и <не <клавиша [стрелка влево v] нажата?>>>, то повернуть @turnRight на (n3) градусов
Псевдокод скрипта
+++++++++++++++++++++++++++++++++++
всегда
если <клавиша [стрелка вверх v] нажата?> , то
если на краю, оттолкнуться
идти (n1) шагов
конец
если <клавиша [стрелка влево v] нажата?> , то
если <не <клавиша [стрелка направо V] нажата>>, то
повернуть @turnLeft на (n2) градусов
конец
конец
если <клавиша [стрелка направо v] нажата?> , то
если <не <клавиша [стрелка влево v] нажата?>>, то
повернуть @turnRight на (n3) градусов
+++++++++++++++++++++++++++++++++++