Přejít k hlavnímu obsahu

Chytré doručování

Výzva: V této hře začíná VR robot uprostřed Města číselné mřížky. Cílem hry je dopravit VR robota do mřížky 0, kde vyzvednout tajný balíček, a poté jej doručit do náhodně přiřazené číselné mřížky. Robot se může pohybovat pouze ve směrech rovnoběžných s osou x nebo rovnoběžných s osou y. Nejrychlejší čas vyhrává!

  • Vyberte a stáhněte si pozadí Smart Delivery jako soubor PNG z této prezentace Google
  • Vyberte hřiště Art Canvas+ a nahrajte pozadí Smart Delivery.
  • Vytvořte algoritmus, který přesune VR robota do mřížky 0 a poté do přiřazené mřížky náhodně vybrané od 1 do 99. 
    • Použijte proměnnou pro uložení náhodně vybraného čísla.
    • Vytiskněte hodnotu proměnné do konzole Print Console, abyste zobrazili přiřazené číslo mřížky.
    • Pomocí pera VR nakreslete trasu doručení s použitím proměnných, které určí vzdálenosti pohonu ve směrech rovnoběžných s osou x a osou y.
    • Pomocí bloku [Vyplnit oblast barvou] vyplňte mřížku 0 a přiřazenou mřížku.

Užitečné rady

  • Každý čtverec v číslované mřížkové mapě měří 200 mm krát 200 mm.
  • Číslice na místě jednotek přiřazeného čísla určuje počet mřížek, o které se robot musí pohybovat ve směru rovnoběžném s osou x z mřížky 0, aby dosáhl přiřazené mřížky.
  • Číslice na místě desítek přiřazeného čísla určuje počet mřížek, o které se robot musí pohybovat ve směru rovnoběžném s osou y z mřížky 0, aby dosáhl přiřazené mřížky.
  • Použijte blok pick random z kategorie Operátory k výběru přiřazeného čísla doručovací mřížky.VEXcode Náhodný blok, který čte 'vybere náhodně 1 až 99'.
    • Odpovídající příkaz Pythonu:

      random.randint(1, 99)
  • Použijte blok remainder z kategorie Operátory k výpočtu číslice na místě jednotek přiřazeného čísla mřížky.Blok VEXcode Remainder, který čte 'zbytek hodnoty assignedGridNumber / 10'.
    • Odpovídající příkaz Pythonu:

      přiřazenéČísloMřížky % 10
  • Použijte blok patro z kategorie Operátory k výpočtu číslice na místě desítek přiřazeného čísla mřížky.Funkční blok VEXcode Floor, který čte 'floor z assignedGridNumber / 10'.
    • Odpovídající příkaz Pythonu:

      math.floor((přiřazenéČísloMřížky) / 10)