Scratch/VCRobot v40

Материал из Letopisi.Ru — «Время вернуться домой»
(Различия между версиями)
Перейти к: навигация, поиск
Строка 44: Строка 44:
  
 
move (n1) steps
 
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
  
 
+++++++++++++++++++++++++++++++++++
 
+++++++++++++++++++++++++++++++++++
Строка 78: Строка 96:
 
идти (n1) шагов
 
идти (n1) шагов
  
+++++++++++++++++++++++++++++++++++
+
конец
 
+
 
+
==Команда Налево==
+
===Л: Латиница / En: Английский язык===
+
 
+
====Скрипт (на светлом фоне)====
+
<scratchblocks>
+
forever
+
if <key [left arrow v] pressed?> then
+
if <not <key [right arrow v] pressed?>> then
+
turn @turnLeft (n2) degrees
+
</scratchblocks>
+
 
+
====Псевдокод скрипта====
+
 
+
+++++++++++++++++++++++++++++++++++
+
 
+
forever
+
 
+
if <key [left arrow v] pressed?> then
+
 
+
if <not <key [right arrow v] pressed?>> then
+
 
+
turn @turnLeft (n2) degrees
+
 
+
+++++++++++++++++++++++++++++++++++
+
 
+
===К: Кириллица / Ru: Русский язык===
+
 
+
====Скрипт (на светлом фоне)====
+
 
+
<scratchblocks>
+
всегда
+
если <клавиша [стрелка влево v] нажата?> , то
+
если <не <клавиша [стрелка направо V] нажата>>, то
+
повернуть @turnLeft на (n2) градусов
+
</scratchblocks>
+
 
+
====Псевдокод скрипта====
+
 
+
+++++++++++++++++++++++++++++++++++
+
 
+
всегда
+
  
 
если <клавиша [стрелка влево v] нажата?> , то
 
если <клавиша [стрелка влево v] нажата?> , то
Строка 129: Строка 104:
 
повернуть @turnLeft на (n2) градусов
 
повернуть @turnLeft на (n2) градусов
  
+++++++++++++++++++++++++++++++++++
+
конец
  
 
+
конец
==Команда Направо==
+
===Л: Латиница / En: Английский язык===
+
 
+
====Скрипт (на светлом фоне)====
+
<scratchblocks>
+
forever
+
if <key [right arrow v] pressed?> then
+
if <not <key [left arrow v] pressed?>> then
+
turn @turnRight (n3) degrees
+
</scratchblocks>
+
 
+
====Псевдокод скрипта====
+
 
+
+++++++++++++++++++++++++++++++++++
+
 
+
forever
+
 
+
if <key [right arrow v] pressed?> then
+
 
+
if <not <key [left arrow v] pressed?>> then
+
 
+
turn @turnRight (n3) degrees
+
 
+
+++++++++++++++++++++++++++++++++++
+
 
+
===К: Кириллица / Ru: Русский язык===
+
 
+
====Скрипт (на светлом фоне)====
+
<scratchblocks>
+
всегда
+
если <клавиша [стрелка направо v] нажата?> , то
+
если <не <клавиша [стрелка влево v] нажата?>>, то
+
повернуть @turnRight на (n3) градусов
+
</scratchblocks>
+
 
+
====Псевдокод скрипта====
+
 
+
+++++++++++++++++++++++++++++++++++
+
 
+
всегда
+
  
 
если <клавиша [стрелка направо v] нажата?> , то
 
если <клавиша [стрелка направо v] нажата?> , то

Версия 10:46, 15 февраля 2018

Код для проекта 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

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) градусов

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

Инструменты