Zum Hauptinhalt springen

Intelligente Zustellung

Herausforderung: In diesem Spiel startet der VR-Roboter im Zentrum der Zahlengitterstadt. Ziel des Spiels ist es, den VR-Roboter zu Feld 0 zu steuern, um ein geheimes Paket abzuholen und es dann an ein zufällig zugewiesenes Zahlenfeld zu liefern. Der Roboter kann sich nur in Richtungen parallel zur x-Achse oder parallel zur y-Achse bewegen. Die schnellste Zeit gewinnt!

  • Wählen Sie den Hintergrund „Smart Delivery“ als PNG-Datei aus Google-Präsentation aus und laden Sie ihn herunter
  • Wählen Sie den Art Canvas+ Playground aus und laden Sie den Smart Delivery-Hintergrund hoch.
  • Erstellen Sie einen Algorithmus, der den VR-Roboter zum Feld 0 und anschließend zu einem zufällig ausgewählten Feld zwischen 1 und 99 steuert 
    • Verwenden Sie eine Variable, um die zufällig ausgewählte Zahl zu speichern.
    • Geben Sie den Variablenwert in der Druckkonsole aus, um die zugewiesene Rasternummer anzuzeigen.
    • Verwenden Sie den VR-Stift, um den Lieferweg mithilfe von Variablen zu zeichnen und so die Fahrstrecken in den Richtungen parallel zur x-Achse und y-Achse zu bestimmen.
    • Verwenden Sie den Block [Fläche mit Farbe füllen], um Raster 0 und das zugewiesene Raster auszufüllen.

Hilfreiche Tipps

  • Jedes Quadrat in der nummerierten Rasterkarte misst 200 mm mal 200 mm.
  • Die Einerstelle der zugewiesenen Nummer bestimmt die Anzahl der Felder, die der Roboter in einer Richtung parallel zur x-Achse von Feld 0 aus bewegen muss, um das zugewiesene Feld zu erreichen.
  • Die Ziffer an der Zehnerstelle der zugewiesenen Zahl bestimmt die Anzahl der Felder, die der Roboter in einer Richtung parallel zur y-Achse von Feld 0 aus bewegen muss, um das zugewiesene Feld zu erreichen.
  • Verwenden Sie den Block zufällig auswählen aus der Kategorie „Operatoren“, um eine zugewiesene Lieferrasternummer auszuwählen.VEXcode Zufallsblock, der 'liest, wähle zufällig 1 bis 99'.
    • Passender Python-Befehl:

      random.randint(1, 99)
  • Verwenden Sie den Block Rest aus der Kategorie Operatoren, um die Ziffer an der Einerstelle der zugewiesenen Gitterzahl zu berechnen.VEXcode Restblock, der 'Rest von assignedGridNumber / 10' liest.
    • Passender Python-Befehl:

      zugewieseneGridNummer % 10
  • Verwenden Sie den Block floor aus der Kategorie Operatoren, um die Ziffer an der Zehnerstelle der zugewiesenen Rasternummer zu berechnen.VEXcode Floor Funktionsblock, der 'Boden von assignedGridNumber / 10' liest.
    • Passender Python-Befehl:

      math.floor((assignedGridNumber) / 10)