Scratch/VCRobot v40

Материал из Letopisi.Ru — «Время вернуться домой»
(Различия между версиями)
Перейти к: навигация, поиск
 
(не показаны 5 промежуточных версий 1 участника)
Строка 1: Строка 1:
Код для проекта https://scratch.mit.edu/projects/162391733
+
'''Пример Scratch/VCRobot v40'''
  
 +
из комплекта опорных примеров КП-010.
 +
 +
Список комплекта примеров представлен в отдельной статье '''Scratch / Домашний робот-пылесос''':
 +
 +
http://letopisi.org/index.php/Scratch_/_Домашний_робот-пылесос
 +
 +
 +
Код для проекта VCRobot v40:
 +
 +
https://scratch.mit.edu/projects/162391733
 +
 +
 +
'''Тема работы'''
  
 
1) Объединение 3-х частных циклов контроля событий:
 
1) Объединение 3-х частных циклов контроля событий:
Строка 18: Строка 31:
 
====Скрипт (на светлом фоне)====
 
====Скрипт (на светлом фоне)====
 
<scratchblocks>
 
<scratchblocks>
 +
when @greenFlag clicked
 
forever
 
forever
 
if <key [up arrow v] pressed?> then
 
if <key [up arrow v] pressed?> then
Строка 36: Строка 50:
  
 
+++++++++++++++++++++++++++++++++++
 
+++++++++++++++++++++++++++++++++++
 +
 +
when @greenFlag clicked
  
 
forever
 
forever
Строка 44: Строка 60:
  
 
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
  
 
+++++++++++++++++++++++++++++++++++
 
+++++++++++++++++++++++++++++++++++
Строка 51: Строка 85:
 
====Скрипт (на светлом фоне)====
 
====Скрипт (на светлом фоне)====
 
<scratchblocks>
 
<scratchblocks>
 +
когда щелкнут по @greenFlag
 
всегда
 
всегда
 
если <клавиша [стрелка вверх v] нажата?> , то
 
если <клавиша [стрелка вверх v] нажата?> , то
Строка 69: Строка 104:
  
 
+++++++++++++++++++++++++++++++++++
 
+++++++++++++++++++++++++++++++++++
 +
 +
когда щелкнут по @greenFlag
  
 
всегда
 
всегда
Строка 78: Строка 115:
 
идти (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: Строка 123:
 
повернуть @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] нажата?> , то

Текущая версия на 12:16, 17 февраля 2018

Пример Scratch/VCRobot v40

из комплекта опорных примеров КП-010.

Список комплекта примеров представлен в отдельной статье Scratch / Домашний робот-пылесос:

http://letopisi.org/index.php/Scratch_/_Домашний_робот-пылесос


Код для проекта VCRobot v40:

https://scratch.mit.edu/projects/162391733


Тема работы

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

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

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

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

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


Содержание

[править] Сводный общий цикл

[править] Л: Латиница / En: Английский язык

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

when @greenFlag clicked
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

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

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

when @greenFlag clicked

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: Русский язык

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

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

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

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

когда щелкнут по @greenFlag

всегда

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

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

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

конец

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

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

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

конец

конец

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

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

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

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

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