Scratch/VCRobot v40

Материал из Letopisi.Ru — «Время вернуться домой»
Перейти к: навигация, поиск

Код для проекта https://scratch.mit.edu/projects/162391733


1) Объединение 3-х частных циклов контроля событий:

нажимы клавиш (кнопок) ручного управления действиями робота-пылесоса:

ход Вперед, поворот Налево, поворот Направо - 1 сводный общий цикл.

2) Наличие взаимного исключения действий клавиш (кнопок) управления:

Налево и Направо.


Содержание

Сводный общий цикл

Л: Латиница / En: Английский язык

Скрипт (на светлом фоне)

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

Псевдокод скрипта

+++++++++++++++++++++++++++++++++++

forever

if <key [up arrow v] pressed?> then

if on edge, bounce

move (n1) steps

+++++++++++++++++++++++++++++++++++

К: Кириллица / Ru: Русский язык

Скрипт (на светлом фоне)

всегда
если <клавиша [стрелка вверх v] нажата?> , то
если на краю, оттолкнуться
идти (n1) шагов
конец
если <клавиша [стрелка влево v] нажата?> , то
если <не <клавиша [стрелка направо V] нажата>>, то
повернуть @turnLeft на (n2) градусов
конец
конец
если <клавиша [стрелка направо v] нажата?> , то
если <не <клавиша [стрелка влево v] нажата?>>, то
повернуть @turnRight на (n3) градусов

Псевдокод скрипта

+++++++++++++++++++++++++++++++++++

всегда

если <клавиша [стрелка вверх v] нажата?> , то

если на краю, оттолкнуться

идти (n1) шагов

+++++++++++++++++++++++++++++++++++


Команда Налево

Л: Латиница / En: Английский язык

Скрипт (на светлом фоне)

forever
if <key [left arrow v] pressed?> then
if <not <key [right arrow v] pressed?>> then
turn @turnLeft (n2) degrees

Псевдокод скрипта

+++++++++++++++++++++++++++++++++++

forever

if <key [left arrow v] pressed?> then

if <not <key [right arrow v] pressed?>> then

turn @turnLeft (n2) degrees

+++++++++++++++++++++++++++++++++++

К: Кириллица / Ru: Русский язык

Скрипт (на светлом фоне)

всегда
если <клавиша [стрелка влево v] нажата?> , то
если <не <клавиша [стрелка направо V] нажата>>, то
повернуть @turnLeft на (n2) градусов

Псевдокод скрипта

+++++++++++++++++++++++++++++++++++

всегда

если <клавиша [стрелка влево v] нажата?> , то

если <не <клавиша [стрелка направо V] нажата>>, то

повернуть @turnLeft на (n2) градусов

+++++++++++++++++++++++++++++++++++


Команда Направо

Л: Латиница / En: Английский язык

Скрипт (на светлом фоне)

forever
if <key [right arrow v] pressed?> then
if <not <key [left arrow v] pressed?>> then 
turn @turnRight (n3) degrees

Псевдокод скрипта

+++++++++++++++++++++++++++++++++++

forever

if <key [right arrow v] pressed?> then

if <not <key [left arrow v] pressed?>> then

turn @turnRight (n3) degrees

+++++++++++++++++++++++++++++++++++

К: Кириллица / Ru: Русский язык

Скрипт (на светлом фоне)

всегда
если <клавиша [стрелка направо v] нажата?> , то
если <не <клавиша [стрелка влево v] нажата?>>, то
повернуть @turnRight на (n3) градусов

Псевдокод скрипта

+++++++++++++++++++++++++++++++++++

всегда

если <клавиша [стрелка направо v] нажата?> , то

если <не <клавиша [стрелка влево v] нажата?>>, то

повернуть @turnRight на (n3) градусов

+++++++++++++++++++++++++++++++++++

Персональные инструменты
Инструменты