Künstler Roboter. Fahrräder

Executor Control Roboter im KUMIR-System

Der Roboter existiert in einer bestimmten Umgebung (rechteckiges Schachbrettfeld). Zwischen einigen Zellen des Feldes können sich Wände befinden. Einige Zellen können übermalt werden (Abb. 3.11).

Der Roboter nimmt genau ein Feld des Feldes ein.

Durch die Befehle nach oben, unten, links und rechts bewegt sich der Roboter in die angegebene Richtung zu einer benachbarten Zelle. Wenn sich eine Wand auf dem Weg befindet, erfolgt eine Ablehnung - eine Nachricht wird ausgegeben, dass der nächste Befehl nicht ausgeführt werden kann.

Auf den Befehl zum Übermalen malt der Roboter die Zelle, in der er steht. Wenn die Zelle bereits übermalt wurde, wird sie erneut übermalt, obwohl keine sichtbaren Änderungen auftreten.

Der Roboter kann nur korrekt geschriebene Befehle ausführen. Wenn statt des Befehls aufschreiben, aufschreiben, dann wird der Roboter diese Eingabe nicht verstehen und sofort einen Fehler melden.

Ö
Fehler: 1 Syntax; 2. logisch

Situationsbeschreibungen werden in Textdateien eines speziellen Formats (.fil-Format) gespeichert.

Strom- die Situation, in der sich der Roboter gerade befindet (einschließlich Informationen über die Position des Roboters).

Beginnend- die Umgebung, in der der Roboter zu Beginn der Ausführung des Programms unter Verwendung des Roboters zwangsweise platziert wird.

Gebrauchsprozedur:


  1. Fragen Startumgebung nach dem Zustand des Problems:
Menü Extras → Startumgebung des Roboters ändern (Umgebung entsprechend den Problembedingungen zeichnen, Namen vergeben, im persönlichen Ordner speichern)

2. Geben Sie den Auftragnehmer an:

Menü einfügen → Roboter verwenden

3. Schreiben Sie einen Algorithmus zur Lösung des Problems.

4. Algorithmus ausführen (Menü Ausführung → Fortlaufend ausführen / F9)

Befehlssystem des Vollstreckers Roboter im KUMIR-System


Team

Aktion

hoch

Der Roboter bewegt sich 1 Zelle nach oben

Nieder

Der Roboter fährt 1 Zelle nach unten

Nach links

Der Roboter bewegt sich 1 Zelle nach links

Nach rechts

Der Roboter bewegt sich 1 Feld nach rechts

übermalen

Der Roboter bemalt den Käfig, in dem er sich befindet

richtig frei

Der Roboter prüft die Erfüllung der entsprechenden einfach Bedingungen

frei gelassen



frei von oben



von unten frei



die Zelle ist übermalt



der käfig ist sauber



Zyklische Algorithmen

Zyklus- Organisation der Wiederholung von Aktionen, während eine bestimmte Bedingung erfüllt ist .

Der Körper der Schleife ist eine Reihe von wiederholbaren Aktionen.

Kondition - boolescher Ausdruck (einfach oder komplex (zusammengesetzt))
Zyklustypen:

1.Zyklus „n-mal wiederholen“ 2. Zyklus „Tschüss“
nc n mal nc tschüss
... ... Schleifenkörper. ... Schleifenkörper
kts kts

Beispiel: nc tschüss richtig frei


Gesamtansicht des Zyklus „n-mal wiederholen:

n MAL WIEDERHOLEN

DAS ENDE
kts

Gesamtansicht des "bye"-Zyklus:

WÄHREND ZU TUN

DAS ENDE
Zusammengesetzte Bedingungen werden aus einer oder mehreren einfachen Bedingungen und Servicewörtern gebildet UND, ODER, NICHT.


Zusammengesetzte Bedingung A UND B(wobei A, B einfache Bedingungen sind) ist erfüllt, wenn jede der beiden darin enthaltenen einfachen Bedingungen erfüllt ist.

Lass A - frei von oben, V - rechts frei, dann die zusammengesetzte Bedingung A UND B- oben frei UND rechts frei.


Zusammengesetzte Bedingung A ODER B ist erfüllt, wenn mindestens eine der beiden darin enthaltenen einfachen Bedingungen erfüllt ist: freies Top ODER freies Recht
Zusammengesetzte Bedingung KEIN- erfüllt, wenn Bedingung A.

Beispiel: Sei A eine farbige Zelle (einfache Bedingung).

P Überprüfen der zusammengesetzten Bedingung NICHT A:

a) A - fertig, NOT A (NICHT übermalt) - nicht fertig.

b) A - nicht erledigt, NOT A (NICHT ausgefüllt) - erledigt.


Verzweigungsbefehl

Verzweigung - eine Form der Handlungsorganisation, bei der je nach Erfüllung oder Nichterfüllung einer bestimmten Bedingung entweder die eine oder andere Handlungsfolge ausgeführt wird.

Allgemeine Ansicht des IF-Befehls:

WENN DANN ANSONSTEN

DAS ENDE

In der Idolsprache:

Vollständige Verzweigung: Unvollständige Verzweigung:
wenn dann wenn dann

ansonsten

alles alles

Helferalgorithmus- ein Algorithmus, der eine Teilaufgabe der Hauptaufgabe löst.

Im KUMIR-System werden Hilfsalgorithmen am Ende des Hauptprogramms (nach dem Servicewort con) werden zur Ausführung im Hauptprogramm namentlich aufgerufen.

V Umfragen und Aufgaben

1. Geben Sie alle Algorithmen der drei Teams an, die den Roboter von der Startposition in Zelle B bewegen.

Gibt es für diese Aufgabe einen Algorithmus, bei dem der Roboter:

a) zwei Schritte; b) vier Schritte; c) fünf Schritte; d) sieben Schritte?


  1. Petya hat einen Algorithmus zusammengestellt, der den Roboter von Zelle A zu Zelle B transferiert und einige Zellen bemalt. Was sollte Kolya mit diesem Algorithmus machen, um einen Algorithmus zu erhalten, der den Roboter von B nach A transferiert und die gleichen Zellen ausfüllt?


7. Zwei Hilfsalgorithmen des Roboters sind bekannt.

Zeichnen Sie, was passiert, wenn der Roboter die folgenden grundlegenden Algorithmen ausführt:


ein)

nts 5 mal


Muster_1

Nach rechts; Nach rechts;


B)

nts 7 mal


Muster_2

Nach rechts; Nach rechts


v)
Nach rechts; Nach rechts; Nach rechts

hoch; hoch

Nach rechts; Nach rechts; Nach rechts

Nieder; Nieder


G)
Nach rechts; Nach rechts
Nach rechts; Nach rechts

8. Erstellen Sie Algorithmen, unter deren Kontrolle der Roboter die angezeigten Zellen malt:



9... Es ist bekannt, dass sich rechts neben dem Roboter eine Wand befindet. Erstellen Sie einen Algorithmus, unter dessen Kontrolle der Roboter eine Reihe von Zellen an die Wand malt und in seine ursprüngliche Position zurückkehrt.

10. Es ist bekannt, dass sich rechts neben dem Roboter eine ausgefüllte Zelle befindet.

MIT verlassen Sie den Algorithmus, nach dem der Roboter eine Reihe von Zellen bis zur gefüllten Zelle malt, und kehrt zu seiner ursprünglichen Position zurück.

11. Es ist bekannt, dass sich der Roboter in der Nähe des linken Eingangs zum horizontalen Korridor befindet.

12. Es ist bekannt, dass sich der Roboter irgendwo im horizontalen Korridor befindet. Keine der Zellen im Korridor ist übermalt.

Erstellen Sie einen Algorithmus, unter dessen Kontrolle der Roboter alle Zellen dieses Korridors übermalt und an seine ursprüngliche Position zurückkehrt.


13. In einer Reihe von zehn Zellen rechts vom Roboter werden einige Zellen übermalt.

MIT verlassen Sie den Algorithmus, der die Zellen malt:

a) unter jeder gefüllten Zelle;

b) über und unter jeder gefüllten Zelle.


14. Was können Sie über die Korrektheit des folgenden Fragments des Algorithmus sagen?

nc tschüss die Zelle ist übermalt

WENN richtig frei DANN

Nach rechts; übermalen

Zu
C

15. Schreiben Sie ein Programm, mit dem der Roboter Zelle B in alle drei Labyrinthe betreten kann.


16. Schreiben Sie ein Programm, nach dem der Roboter den Korridor von der unteren linken Ecke des Feldes nach oben rechts ablaufen kann. Der Korridor ist eine Zelle breit und erstreckt sich von links nach unten nach rechts oben. Ein Beispiel für einen möglichen Korridor ist in der Abbildung dargestellt.

Z

adachi GIA


  1. Korridor 1. Der Roboter befindet sich irgendwo in einem vertikalen Korridor. Keine der Zellen im Korridor ist übermalt. Erstellen Sie einen Algorithmus, unter dessen Kontrolle der Roboter alle Zellen dieses Korridors übermalt und an seine ursprüngliche Position zurückkehrt.

  1. ZU
    Notwendig

    Gegeben
    oridor2. Der Roboter befindet sich im oberen Käfig eines schmalen vertikalen Korridors. Die Breite des Korridors beträgt eine Zelle, die Länge des Korridors kann beliebig sein.

Eine mögliche Variante der Ausgangsposition des Roboters ist in der Abbildung dargestellt (der Roboter ist mit dem Buchstaben "P" gekennzeichnet)

Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen innerhalb des Korridors bemalt und den Roboter an seine ursprüngliche Position zurückbringt. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild):


  1. Das endlose Feld hat eine lange horizontale Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich in einem der Käfige direkt über der Wand. Die Ausgangsposition des Roboters ist ebenfalls unbekannt. Eine der möglichen Positionen:
n


Notwendig

Gegeben
Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen über und neben der Wand malt, unabhängig von der Größe der Wand und der Ausgangsposition des Roboters. Für das obige Bild muss der Roboter beispielsweise die folgenden Zellen übermalen:

Die Endposition des Roboters kann beliebig sein. Beim Ausführen des Algorithmus sollte der Roboter nicht zerstört werden.



  1. Das endlose Feld hat eine lange senkrechte Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich in einem der Käfige direkt rechts von der Wand. Auch die Ausgangsposition des Roboters ist unbekannt. Eine der möglichen Positionen des Roboters ist in der Abbildung dargestellt (der Roboter wird mit dem Buchstaben "P" bezeichnet): Schreiben Sie einen Algorithmus für die Arbeit, der alle an die Wand angrenzenden Zellen bemalt: links, von oben beginnend unbemalt und nach einem; rechts, beginnend mit dem unteren ausgefüllt und durch eins. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild muss der Roboter beispielsweise die folgenden Felder ausfüllen (siehe Bild): Die Endposition des Roboters kann beliebig sein. Der Algorithmus muss das Problem für eine beliebige Wandgröße und eine beliebige gültige Startposition des Roboters lösen. Beim Ausführen des Algorithmus sollte der Roboter nicht zusammenbrechen.


Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen ausfüllt, die sich links von der vertikalen Wand und über der horizontalen Wand und neben ihnen befinden. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild).


n Schreiben Sie einen Algorithmus für den Roboter, der die Zellen neben der Wand oben und unten malt, beginnend von links und nacheinander. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Zum Beispiel für die gegebene Abbildung a) Der Roboter muss die folgenden Zellen überstreichen (siehe Abb. B).

Die Endposition des Roboters kann beliebig sein. Der Algorithmus sollte das Problem für eine beliebige Wandgröße und jede gültige Startposition des Roboters lösen.



R

  1. Das endlose Feld hat eine lange senkrechte Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich in einem der Käfige direkt links von der Wand. Auch die Ausgangsposition des Roboters ist unbekannt. Eine der möglichen Positionen des Roboters ist in der Abbildung dargestellt (der Roboter ist mit dem Buchstaben "P" gekennzeichnet):
Schreiben Sie einen Algorithmus für die Arbeit, der alle an die Wand angrenzenden Zellen malt:

  • alles links;

  • rechts, von oben beginnend unbemalt und durch eins.
Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen.

B
1102_GIA2011

Das endlose Feld hat zwei horizontale Wände. Die Länge der Mauern ist unbekannt. Der Abstand zwischen den Wänden ist unbekannt. Der Roboter befindet sich über der unteren Wand des Käfigs, an dessen linker Kante. Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen ausfüllt, die sich über der unteren Wand und unter der oberen Wand und neben ihnen befinden. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild muss der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild):

Die Endposition des Roboters kann beliebig sein. Der Algorithmus muss das Problem für eine beliebige Feldgröße und jede akzeptable Lage von Wänden innerhalb eines rechteckigen Felds lösen. Beim Ausführen des Algorithmus sollte der Roboter nicht zusammenbrechen.


V
1103_GIA_2011


Auf dem endlosen Feld befindet sich eine horizontale Wand. Die Länge der Mauer ist unbekannt. Eine vertikale Wand unbekannter Länge erstreckt sich auch vom rechten Ende der Wand nach unten. Der Roboter befindet sich über einer horizontalen Wand in einem Käfig an seinem linken Rand. Die Abbildung zeigt eine der Möglichkeiten, die Wände und den Roboter anzuordnen (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).

Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen ausfüllt, die sich über der horizontalen Wand und rechts von der vertikalen Wand und neben ihnen befinden. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild).

Lösung 20.1 der OGE 2017 Aufgabe in Informatik aus der Demo. Dies ist eine Aufgabe des zweiten Teils mit einer detaillierten Antwort von hoher Komplexität. Die geschätzte Zeit für diese Aufgabe beträgt 45 Minuten. Für diese Aufgabe können Sie maximal 2 Punkte erzielen. Die Aufgabe wird auf dem Computer ausgeführt.

Geprüfte Inhalte:
- die Fähigkeit, einen kurzen Algorithmus in der Umgebung eines formalen Executors zu schreiben.

Beschreibungen der während der Prüfung getesteten Inhaltselemente:
- Algorithmus,
- Eigenschaften von Algorithmen,
- Möglichkeiten, Algorithmen zu schreiben,
- Blockschaltbilder,
- Programmierverständnis,
- algorithmische Konstruktionen,
- boolesche Werte,
- Operationen,
- Ausdrücke,
- Aufteilen der Aufgabe in Teilaufgaben,
- Hilfsalgorithmus,
- verarbeitete Objekte (Zeichenketten, Zahlen, Listen, Bäume).

20.1 OGE 2017 Aufgabe in der Informatik

Performer Der Roboter ist in der Lage, durch ein Labyrinth zu navigieren, das auf einer in Zellen unterteilten Ebene gezeichnet ist. Zwischen benachbarten (seitlich) Zellen kann sich eine Wand befinden, die der Roboter nicht passieren kann.
Der Roboter hat neun Teams. Vier Befehle sind Befehlsbefehle:
hoch
Nieder
Nach links
Nach rechts
Wenn einer dieser Befehle ausgeführt wird, bewegt sich der Roboter jeweils um ein Feld: nach oben, nach unten ↓, nach links ←, nach rechts →. Wenn der Roboter den Befehl erhält, sich durch die Wand zu bewegen, kollabiert er.
Der Roboter hat auch einen Befehl übermalen, bei dem die Zelle, in der sich der Roboter gerade befindet, übermalt wird.
Vier weitere Befehle sind Befehle zum Prüfen von Bedingungen. Diese Befehle prüfen, ob der Weg für den Roboter in jede der vier möglichen Richtungen frei ist:
oben frei
von unten frei
frei gelassen
richtig frei
Diese Befehle können in Verbindung mit der Bedingung „ wenn", die die folgende Form hat:
wenn Kondition dann
Befehlsfolge
alle
Die Bedingung ist hier einer der Befehle zur Überprüfung der Bedingung.
Befehlsfolge Ist einer oder mehrere Befehlsbefehle.
Um beispielsweise eine Zelle nach rechts zu verschieben, wenn rechts keine Wand ist, und die Zelle zu malen, können Sie den folgenden Algorithmus verwenden:
wenn das Recht dann frei ist
Nach rechts
übermalen
alle
In einer Bedingung können Sie mehrere Befehle verwenden, um Bedingungen mit logischen Verknüpfungen zu überprüfen und, oder, nicht, Beispielsweise:
wenn (rechts ist frei) und (nicht darunter ist frei) dann
Nach rechts
alle
Um eine Befehlsfolge zu wiederholen, können Sie die Schleife „ Tschüss", die die folgende Form hat:
nc tschüss Kondition
Befehlsfolge
kts
Um beispielsweise nach rechts zu gehen, können Sie den folgenden Algorithmus verwenden:
nts so weit rechts ist frei
Nach rechts
kts

Die Aufgabe erledigen.
Das unendliche Feld hat horizontale und vertikale Wände. Das linke Ende der horizontalen Wand ist mit dem unteren Ende der vertikalen Wand verbunden. Die Länge der Wände ist unbekannt... Es gibt genau einen Durchgang in der vertikalen Wand, die genaue Lage des Durchgangs und seine Breite sind unbekannt. Der Roboter befindet sich in einem Käfig direkt über der horizontalen Wand an seinem rechten Ende.
Die Abbildung zeigt eine der Möglichkeiten, die Wände und den Roboter anzuordnen (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).

Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen unmittelbar links und rechts von der vertikalen Wand ausfüllt. Die Passage muss unbemalt bleiben. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild).

Beim Ausführen des Algorithmus sollte der Roboter nicht zusammenbrechen, die Ausführung des Algorithmus sollte beendet werden. Der endgültige Standort des Roboters kann beliebig sein.
Der Algorithmus sollte das Problem für jede gültige Position von Wänden und jede Position und Größe des Durchgangs innerhalb der Wand lösen.
Der Algorithmus kann in der Umgebung eines formalen Executors ausgeführt oder in einem Texteditor geschrieben werden.
Speichern Sie den Algorithmus in einer Textdatei. Der Name der Datei und das Verzeichnis zum Speichern werden Ihnen von den Prüfungsorganisatoren mitgeteilt.

Beschluss 20.1 der OGE 2017 Aufgabe in der Informatik

Wir werden die Befehle des Darstellers aufnehmen deutlich Schriftart und Kommentare - kursiv... Der Anfang des Kommentars wird durch das Symbol "|" gekennzeichnet. ( Es ist nicht erforderlich, Kommentare während der Ausführung der Arbeiten zu notieren).

|Wir bewegen uns nach links, bis wir eine senkrechte Wand erreichen.
nts so weit links ist frei
Nach links
kts

|Wir bewegen uns nach oben, bis wir den Durchgang in der Wand erreichen und übermalen die Zellen.
nts noch nicht freigelassen
übermalen
hoch
kts

|Gehe bis zum Ende der Wand und male über die Zellen.
nts noch nicht freigelassen
übermalen
hoch
kts

|Wir gehen um die Mauer herum.
Nach links
Nieder

|Wir gehen nach unten, bis wir den Durchgang in der Wand erreichen, und übermalen die Zellen.
nts noch nicht rechts frei
übermalen
Nieder
kts

|Wir gehen bis zum Ende der Wand und übermalen die Zellen.
nts noch nicht rechts frei
übermalen
Nieder
kts

Andere Lösungen sind ebenfalls möglich.
Es ist erlaubt, eine andere Syntax der Anweisungen des Darstellers zu verwenden, die den Schülern besser bekannt ist.
Es sind einige Syntaxfehler erlaubt, die die Absicht des Autors der Lösung nicht verfälschen.

2 Punkte für die Aufgabe gibt es, wenn
Der Algorithmus funktioniert mit allen gültigen Eingabedaten korrekt.
1 Punkt für die Aufgabe wird vergeben, wenn
Bei allen gültigen Eingabedaten gilt:
1) die Ausführung des Algorithmus endet und der Roboter bricht nicht ab;
2) nicht mehr als 10 zusätzliche Zellen werden übermalt;
3) nicht mehr als 10 Zellen von denen, die übermalt werden sollten, blieben unbemalt.
0 Punkte für die Aufgabe werden vergeben, wenn
Die Aufgabe wurde falsch abgeschlossen, dh die Bedingungen wurden nicht erfüllt, sodass 1 oder 2 Punkte vergeben werden konnten.

Idol-Programm

Künstler Roboter


Wer ist Performer-Roboter?

  • Stellen Sie sich ein kariertes Feld (wie ein Blatt eines karierten Notizbuchs) vor, auf dem sich ein Objekt befindet, das wir einen Roboter nennen. Mit speziellen Befehlen können wir diesen Roboter steuern - bewegen Sie ihn um die Zellen herum, malen Sie über die Zellen. Und in den meisten Fällen besteht unsere Aufgabe darin, ein solches Programm für den Roboter zu schreiben, mit dem er bestimmte Zellen übermalt.

Einrichten der Idol-Umgebung für den Performer-Roboter

  • Das laufende Programm Idol sieht so aus.

Startumgebung des Roboters

  • Bevor mit der Ausführung des Programms begonnen wird, muss die Startsituation für den Roboter-Performer eingestellt werden. Dies bedeutet, den Roboter in die gewünschte Position zu bringen, die Wände anzuordnen, die erforderlichen Zellen zu bemalen usw. Dieser Schritt ist sehr wichtig. Wenn Sie es ignorieren, funktioniert das Programm möglicherweise nicht richtig oder wird sogar abnormal beendet.

Drücken Sie Einrichtung bearbeiten



Künstler Roboter. Einfache Befehle.

  • hoch
  • Nieder
  • Nach links
  • Nach rechts
  • übermalen

Das Ergebnis der Ausführung dieser Befehle ist aus ihrem Namen ersichtlich:

  • nach oben - bewege den Roboter ein Feld nach oben
  • nach unten – bewege den Roboter ein Feld nach unten
  • left - bewege den Roboter ein Feld nach links
  • rechts - bewege den Roboter ein Feld nach rechts
  • Übermalen - Übermalen Sie die aktuelle Zelle (die Zelle, in der sich der Roboter befindet).

Beispiel für einen Algorithmus

  • Zuerst müssen Sie den Satz schreiben:
  • benutzen Roboter

Wenn Sie wissen, wie viele Zellen Sie übermalen müssen, lautet der Lösungsalgorithmus wie folgt!


Aufgabennummer 1

  • Schreiben Sie ein Programm, um das folgende Problem zu lösen, wenn Sie wissen, wie viele Zellen Sie bemalen müssen

Fahrräder

  • 1. Zyklus mit Zähler Es wird verwendet, wenn im Voraus bekannt ist, wie viele Wiederholungen durchgeführt werden müssen.

nts mal

kts

Hier müssen wir die Anzahl der Wiederholungen (Zahl) und die Befehle angeben, die wiederholt werden. Die Befehle, die in der Schleife wiederholt werden, heißen der Körper des Zyklus.



Aufgabennummer 2

  • Schreiben Sie ein Programm, um das folgende Problem mit einer Zählerschleife zu lösen

  • 2. Schleife mit Bedingung solange die Bedingung wahr ist - die Schleife wird ausgeführt, wenn falsch nicht wahr ist
  • Der Executor Robot hat mehrere Bedingungen

frei von oben

von unten frei

frei gelassen

richtig frei

obere Wand

untere Wand

linke Wand

rechte Wand

  • Partikel können verwendet werden: NICHT, UND, ODER

Bedingte Schleifenstruktur

nc tschüss richtig frei

Nach rechts

übermalen

kts



Aufgabennummer 3

  • Schreiben Sie ein Programm, um das folgende Problem mithilfe einer bedingten Schleife zu lösen:

Aufgabennummer 4

  • Schreiben Sie ein Programm, um das folgende Problem mit Hilfe von Bedingungsschleifen zu lösen:



Probleme lösen:

  • 2. Der Roboter muss durch Überstreichen der Wände von der Startposition in die Endposition überführt werden


Aufgabennummer 5

  • Auf dem endlosen Feld befindet sich eine horizontale Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich an seinem linken Ende oben auf der Wand. Die Abbildung zeigt die Position des Roboters relativ zur Wand (der Roboter ist mit dem Buchstaben "P" gekennzeichnet):

Antwort auf Aufgabe Nummer 5

  • nts bis (unten frei)

übermalen

Der Zyklusbeginn (nts) und die Bedingung (noch nicht (frei von unten)) werden in eine Zeile geschrieben.



Entwurf wenn

  • oben frei unten frei links frei rechts frei
  • Diese Befehle können in Verbindung mit der Bedingung verwendet werden "wenn" das sieht so aus:
  • wenn Kondition dann
  • Befehlsfolge
  • Um beispielsweise eine Zelle nach rechts zu verschieben, wenn rechts keine Wand ist, und die Zelle zu malen, können Sie den folgenden Algorithmus verwenden:
  • wenn das Recht dann frei ist
  • Nach rechts
  • übermalen

Aufgabennummer 7

Die Länge der Mauern ist unbekannt.


Antwort auf Aufgabe Nummer 7

bis die Spitze frei ist

übermalen

Nach rechts

solange die Spitze frei ist

Nach rechts

während rechts frei ist

übermalen

Nach rechts

bis das Recht frei ist

übermalen

Nieder

während rechts frei ist

Nieder

bis das Recht frei ist

übermalen

Nieder


Aufgabennummer 8

Die Länge der Mauern ist unbekannt.

Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.


Antwort auf Aufgabe Nummer 8

solange die Spitze frei ist

bis die Spitze frei ist

übermalen

solange die Spitze frei ist

bis die Spitze frei ist

übermalen

bis der Boden frei ist

übermalen

solange der Boden frei ist

bis der Boden frei ist

übermalen


Aufgabennummer 9

Die Länge der Mauern ist unbekannt.

Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.


Antwort auf Aufgabe Nummer 9

solange der Boden frei ist

bis der Boden frei ist

übermalen

solange der Boden frei ist

bis der Boden frei ist

übermalen

bis die Spitze frei ist

übermalen

solange die Spitze frei ist

bis die Spitze frei ist

übermalen


Aufgabennummer 10

Die Länge der Mauern ist unbekannt.

Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.


Antwort auf Aufgabennummer 10

solange die linke frei ist

bis frei

übermalen

solange die linke frei ist

bis frei

übermalen

bis das Recht frei ist

übermalen

während rechts frei ist

bis das Recht frei ist

übermalen


Aufgabennummer 11

Die Länge der Mauern ist unbekannt.

Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.


Antwort auf Aufgabe Nummer 11

bis die Spitze frei ist

bis die Spitze frei ist

übermalen

solange der Boden frei ist

bis die Spitze frei ist

übermalen


Aufgabennummer 12

Es gibt eine Treppe auf dem endlosen Feld. Zuerst geht die Treppe von rechts nach links runter, dann von links nach rechts runter. Die Höhe jeder Stufe beträgt eine Zelle, die Breite beträgt zwei Zellen. Der Roboter befindet sich rechts von der obersten Sprosse der Treppe. Die Anzahl der Schritte nach links und die Anzahl der Schritte nach rechts ist unbekannt. Die Abbildung zeigt eine der Möglichkeiten, die Leiter und den Roboter zu platzieren (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).


Antwort auf Aufgabe Nummer 12

Wir gehen von rechts nach links unter der Treppe hinunter, bis wir die Abzweigung der Treppe erreichen:

nts während unten ist kostenlos

Nieder

Nach links

Nach links

Wir gehen zum Ende der absteigenden Treppe hinunter und übermalen die notwendigen Zellen auf dem Weg:

nts noch nicht freigelassen

übermalen

Nach rechts

übermalen

Nach rechts

Nieder



Antwort auf Aufgabe Nr. 13

nts so weit links ist frei

übermalen

Nach links

hoch

nts noch nicht freigelassen

übermalen

hoch


Aufgabennummer 14

Das unendliche Feld hat ein von Wänden begrenztes Rechteck. Die Längen der Seiten des Rechtecks ​​sind unbekannt. Der Roboter befindet sich in einem Rechteck. Die Abbildung zeigt eine der Möglichkeiten, die Wände und den Roboter anzuordnen (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).


Antwort auf Aufgabe Nummer 14

während rechts frei ist

Nach rechts

solange die Spitze frei ist

hoch

übermalen

nts so weit links ist frei

Nach links

übermalen



Antwort auf Aufgabe Nummer 15

während rechts frei ist

übermalen

Nach rechts

solange der Boden frei ist

übermalen

Nieder

übermalen

bis (unten frei)

Nach links

Nieder

bis (rechts frei)

übermalen

Nieder

übermalen

Nach rechts

bis (oben frei)

übermalen

Nach rechts



Antwort auf Aufgabe Nummer 16

bis das Recht frei ist

übermalen

Nieder

übermalen

Nach rechts

bis die Spitze frei ist

übermalen

Nach rechts

solange die Spitze frei ist

hoch

während rechts frei ist

übermalen

Nach rechts

bis das Recht frei ist

übermalen

Nieder






Executor Robot Executor's Befehlssystem Roboterbewegungsbefehle: oben, unten, links, rechts Der Roboter bewegt eine Zelle nach oben, unten, links, rechts. Der Befehl zum Übermalen - malt die Zelle, in der der Roboter steht. Prüfung der Wahrheit der Bedingung: frei von oben, frei von unten, frei links, frei rechts Der Roboter prüft die Richtigkeit der Bedingung, dass sich in der Nähe der Zelle, in der sich der Roboter befindet, keine Wand befindet. Sie können die Notation zusammengesetzter Bedingungen verwenden, die durch logische Operationen AND, OR, NOT gebildet werden.




Performer Robot Direkte Bearbeitung der Situation Alle Befehle zur Bearbeitung der Umgebung werden mit der Maus ausgeführt: Wand aufsetzen / entfernen - auf den Rand zwischen den Zellen klicken, Zelle anmalen / löschen - auf die Zelle klicken, den Roboter bewegen - ziehen es in die gewünschte Zelle.


Executor Roboter Roboter-Menübefehle Roboterfeld anzeigen Macht das Roboter-Beobachtungsfenster sichtbar. Druckeinstellung Erstellt eine PDF-Datei der aktuellen Einstellung in Farbe oder Schwarzweiß. Einrichtungsgegenstände in Datei speichern Erstellt eine Textdatei, die die Einrichtungsgegenstände im internen *.fil-Format beschreibt. Diese Datei kann später als Ausgangseinstellung (Befehl Starteinstellung ändern) oder beim Bearbeiten der Ausgangseinstellung (Befehl Öffnen im Fenster Ausgangseinstellung) geladen werden. Als Startumgebung ändern Setzt einen neuen Namen für die Startumgebungsdatei (über den Standarddialog) und lädt eine neue Startumgebung. Zurück zur Starteinstellung Macht die Starteinstellung aktuell.


Performer Robot Bild der aktuellen Situation im Beobachtungsfenster Das Bild der aktuellen Situation wird immer komplett im Arbeitsbereich des Beobachtungsfensters des Roboters platziert. Der Hintergrund des Arbeitsbereichs ist grün. Gefüllte Zellen sind grau. Zwischen den Zellen befinden sich dünne schwarze Linien. Wände mit dicken gelben Linien gezeichnet. In der Zelle des Arbeitsbereichs des Beobachtungsfensters wird der Roboter durch eine Raute dargestellt.


Beispiel eines Performer-Roboters 1. Lassen Sie uns einen Algorithmus namens "Knight's Move" zusammenstellen, damit der Roboter von Punkt A zu Punkt B gelangt (Abb. 3). Der Algorithmus sieht wie folgt aus (Abb. 4.). Nach seiner Ausführung bewegt sich der Roboter zum gewünschten Punkt (Abb. 5). Ein in der Sprache des Darstellers geschriebener Algorithmus wird als Programm bezeichnet. Abb. 3 Abb. 4 Abb. 5











Die Aufgabe des Lehrers ist es, diesen Weg mit dem Schüler zu gehen, ohne sich gegen Misserfolge zu versichern, aber Enttäuschungen aufgrund möglicher Schwierigkeiten zu vermeiden. Es ist sehr wichtig, den Unterricht so zu organisieren, dass die Kinder durch sinnvolle Aktivitäten selbst Neues entdecken.
Wie hilft ein Roboter beim Erlernen von Informatik? Ich werde nur auf einige Informatikthemen hinweisen, auf denen die Robotik basiert.
Das Thema "Dateien und das Dateisystem".
Dem Schüler steht ein LEGO®NXT Mikrocomputer aus dem LEGO Mindstorms NXT Education Lernset zur Verfügung. Sein Dateisystem wird durch Standardbefehle verwaltet, aber da der Speicher nicht groß ist, muss die Kontrolle dessen, was benötigt und was nicht benötigt wird, ständig überwacht werden. Um die Aktionen des Roboters zu ertönen, ein Bild anzuzeigen, die Bibliothek der Arbeitsprogramme aufzufüllen, ist es notwendig, mit den Grundkonzepten der Informatik zu arbeiten: Datei, Dateityp, Dateipfad, Menü, Ordner.
Thema "Informationsprozesse", "Informationscodierung".
Das Robotik-Kit ist mit Sensoren ausgestattet, die Audio-, Tast- und Videoinformationen aufzeichnen. Nach der Digitalisierung können die Informationen auf dem Bildschirm angezeigt werden. Eine spezielle Funktion des Mikrocomputers ermöglicht das Experimentieren mit Sensoren, Motoren, mit vorgefertigten Programmen. Nach einer Reihe von Experimenten mit Sensoren entsteht ein Verständnis: Warum der Ultraschall-Abstandssensor langsamer arbeitet als der Infrarot-Lichtsensor, wie der Ton in einen digitalen Code umgewandelt wird und so weiter. Das Studium der Informationsprozesse und der Prinzipien der Informationscodierung vermittelt ein tieferes Verständnis des Wesens der Informationstechnologie.

Das Thema lautet "Kommunikationstechnologien".
Der LEGO®NXT Mikrocomputer unterstützt die drahtlose Technologie. Mit der Bluetooth-Funktion können Sie eine drahtlose Verbindung zwischen Ihrem NXT-Mikrocomputer und anderen Bluetooth-fähigen Geräten wie anderen NXTs, Mobiltelefonen oder Computern herstellen. Nachdem eine Bluetooth-Verbindung hergestellt wurde, ist es möglich: Programme aus der Ferne von einem Computer herunterzuladen; Senden von Programmen von anderen Geräten (nicht von einem Computer), einschließlich von NXT; Senden Sie Programme sowohl an einzelne NXTs als auch an ihre Gruppen. Diese Technologie ermöglicht es, den Roboter über ein Mobiltelefon zu steuern.

Themen „Algorithmen. Algorithm Executor "," Programmierumgebung ".
Zum ersten Kennenlernen des Roboters können Sie die NXT-Einheit direkt ohne Computer programmieren. Direkt auf dem Bildschirm können Sie mit einem Muster von fünf Befehlen ein einfaches Programm erstellen und es wiederholen. Auf Kenntnisse grundlegender algorithmischer Konstruktionen und die Beherrschung der Programmierumgebung kann jedoch nicht verzichtet werden. Es ist die Fähigkeit, den Roboter zu programmieren, der ihn zu einem vielseitigen Performer macht, der verschiedene Aufgaben lösen kann. Sie sollten beginnen, die Programmiertechnologie mit visuellen Programmierumgebungen zu beherrschen, und dann zu leistungsfähigeren und moderneren ereignisgesteuerten Umgebungen übergehen.
So erfordert die Robotik grundlegende Kenntnisse der Informatik, und der unerschöpfliche Wunsch des Schülers, seinen Roboter „zum Besten“ zu machen, treibt ihn an, sich neues Wissen anzueignen.
Warum ist ein Roboter ein ideales Lernwerkzeug? Denn dieses Tool ermöglicht es, eine Lernumgebung zu schaffen, die die natürlichen Neigungen des Kindes zum Spielen, Gestalten und Kommunizieren mit Gleichaltrigen erfordert. Wir können also die Vorteile der Robotik als Lernwerkzeug hervorheben:
... Die Aneignung von Wissen findet während des Spiels statt.
... Einen Roboter zu entwerfen bietet kreative Freiheit.
... Die meisten Studenten bemühen sich, ihre Arbeit zu verbessern.

Als Beispiel möchte ich das Modell eines "Roboter mit kostenlosen Leckereien" anführen, der von einem Schüler der 6. Klasse im Rahmen des Kurses Roboterprogrammierung in außerschulischen Aktivitäten erstellt wurde. Der Roboter wird aus dem LEGO MINDSTORMS NXT Education 9797-Set nach dem Standardmodell Alfarex 1.0 zusammengestellt und mit einem Farbsensor zur Statusanzeige des Roboters und einem Tablett für Leckereien ergänzt.
Ziel der Arbeit ist die Umsetzung eines menschlichen Gangmodells, soweit dies mit den verfügbaren Ressourcen möglich ist. Die Bewegung jedes Beins wird durch einen Motor und eine mechanische Anordnung von Zahnrädern und Hebeln gesteuert. Ein Hebel bewegt das Bein nach oben und unten, der andere nach vorne. In diesem Fall weicht der Körper zum Standbein hin ab, wodurch der Roboter das Gleichgewicht hält. Diese Gangart wird "Schlurfen" genannt
Ein separater Motor treibt den Distanzsensor und die Hebel an, die den Berührungssensor und den Farbsensor halten. Die Essensschale ist fixiert.
Der Roboter ist so programmiert, dass er die Rolle eines Hausierers übernimmt, beispielsweise kostenlose Leckereien, gemäß dem folgenden Verhaltensalgorithmus. Der Roboter begleitet seine Bewegung geradlinig mit dem Satz: "Ich bin ein Alpharex-Roboter, ich behandle dich umsonst!" Eine Person, die mit dem Roboter in Kontakt treten möchte, kann diesen mit einer Geste stoppen. Nach dem Anhalten sagt der Roboter den Satz: "Helfen Sie sich und drücken Sie den Knopf!" Eine Person, die eine Süßigkeit nimmt, sollte den Knopf einmal als Zeichen der Dankbarkeit drücken. Drei Sekunden nach dem Stoppen bewegt sich der Roboter weiter. Wenn die Leckereien aufgebraucht sind (der Roboter ist für eine bestimmte Anzahl von Süßigkeiten auf dem Tablett programmiert), verabschiedet sich der Roboter, die rote Kontrollleuchte geht an und der Roboter stoppt.

Das Programm zur Steuerung des Roboters wurde in der NXT Programming 2.0 Umgebung geschrieben.