lehrkraefte:snr:informatik:bruehl-2022:auswahl

  • Steuerung der Turtle per Tastatur
  • mit anderen Worten: Wir schreiben ein Zeichen- oder Mal-Programm!
  • “Bedingte Ausführung”. Was ist if-else-Selektion?

if-Selektion (Auswahl, Selektion, if-then-else-Struktur, Verzweigung)

Oft muss man sich im Leben entscheiden (Welcher Weg bei Wanderung, welche Schule, welcher Beruf).

Motivation durch Pseudo-Code zwei Flussdiagramme:

  1. “Wenn die Sonne scheint, dann nimm den Sonnenhut. Geh raus.” Beispiel für if-Selektion.
  2. “Wenn die Sonne scheint, dann nimm den Sonnenhut, sonst nimm den Regenschirm. Geh raus.”. Beispiel für if-else-Selektion.

Gemeinsam mit kurzen Einzelarbeitsphasen, ca. 3 + 3 + 5 + 4 Minuten (mit Zwischenbesprechung), Teilaufgaben bitte genau lesen!

Das folgende Programm illustriert die zwei häufigsten Verwendungen der if-(-else)-Selektion.

  1. Kopiere das Programm in deine Tigerjython-IDE und bringe es mit möglichst wenig Änderungen zum Funktionieren.
  2. Führe das Programm aus (eventuell im Debugging-Modus) und verstehe es auf diese Weise! Test etwa, was bei den fünf Eingaben 15, 130, 0, -23 und 2022 passiert.
  3. Ändere das Programm so, dass bei einer Altersangabe $<0$ oder $\geq 130$ nur “Das glaube ich dir nicht.” ausgegeben wird, aber nicht mehr “Du bist kein Baby.”. Vielleicht ist es hilfreich, die Info-Boxen unten zu lesen.
  4. Zeichne Flussdiagramme zum ursprünglichen und zum veränderten Programm. (Das Symbol für eine Selektion ist ein auf einer Ecke stehendes Quadrat.)
alter = input("Gib dein Alter ein!")
 
# Erste Verwendung:
if alter < 0 or alter >= 130
print("Das glaube ich dir nicht.")
 
# Zweite Verwendung:
if alter == 0:
    print("Du bist ein Baby.")
else
    print("Du bist kein Baby.")

if-Selektion: Der eingerückte Code-Block (der auch aus mehreren Zeilen bestehen kann) nach der if-Zeile wird ausgeführt, falls die Bedingung zwischen if und : wahr ist (wenn man die aktuellen Werte der Variablen einsetzt). Wer mag, kann den Doppelpunkt : als then lesen: “Wenn … dann …”

if-else-Selektion: Der eingerückte Code-Block nach der if-Zeile wird ausgeführt, falls die angegebene Bedingung wahr ist, sonst wird der eingerückte Code-Block nach der Zeile else: ausgeführt. Diese gesamte Struktur bedeutet also: “Wenn … dann … sonst …”

Einrückungen und Doppelpunkte sind wichtig! Wie bei repeat sind sie eine beliebte Fehlerquelle!

Im obigen Programm tauchen einige Vergleiche von Zahlen auf. Hier die wichtigsten Vergleichsmöglichkeiten:

  • == für mathematisches “gleich” $=$. Achtung: Das einfache Gleichheitszeichen = wird für die Zuweisung bei Variablen verwendet.
  • != für “ungleich” $\not=$.
  • < für “echt kleiner” $>$.
  • > für “echt grösser” $>$.
  • <= für “kleiner-gleich” $\leq$ (also kleiner oder gleich).
  • >= für “grösser-gleich” $\geq$.

Einzelarbeit, ca. 15 Minuten.

Mit from random import * am Programmanfang liefert der Befehl random() Zufallszahlen zwischen 0 und 1 (alle Zahlen kommen “gleich oft” vor). Teste dies mit dem folgenden Code.

from random import *
repeat 10:
    z = random()
    print(z)

Erweitere den folgenden Programmcode so, dass die Schildkröte zufällig durch die Gegend läuft: Sie soll n Mal um s = 10 Pixel nach vorne laufen und nach jeder Vorwärtsbewegung entweder um $90^\circ$ nach links oder nach rechts abbiegen, jeweils mit Wahrscheinlichkeit $50 \%$.

from gturtle import *
from random import *
 
makeTurtle()
speed(-1)            # Das ist die schnellstmögliche Geschwindigkeit (abgesehen von hideTurtle())
s = 10
n = input("Wie oft soll sich die Schildkröte bewegen?")
 
# Hier deinen Code ergänzen!

Hinweise:

  • Wer will, kann zuerst ein Flussdiagramm entwerfen (im Kopf oder auf Papier).
  • Verwende eine repeat-Schleife und eine if-else-Selektion.

Bonusteilaufgaben: (bitte ausklappen)

Bonusteilaufgaben: (bitte ausklappen)

  • Verändere die Strecke s, um die sich die Kröte vorwärts bewegt, zufällig um $+1$ oder $-1$. (Die Turtle akzeptiert auch forward(-2) und geht dann eben 2 Pixel rückwärts.)
  • Sorge dafür, dass s stets zwischen 0 und 20 liegt.
  • Ändere das Programm so, dass die Turtle (ungefähr) doppelt so oft nach links wie nach rechts abbiegt.
  • Verändere den Winkel, um den die Turtle abbiegt, zufällig um $+5^\circ$ oder $-5^\circ$. Dazu benötigst du eine neue Variable.
  • Variiere die Dicke des Zeichenstifts zufällig.
  • Sorge dafür, dass die Turtle nie das Zeichenfenster verlässt! Dazu wirst du vermutlich die Befehle getX() und getY() verwenden, die dir die aktuellen Koordinaten der Turtle liefern.

“Gemeinsam im Gespräch”, ca. 5 Minuten.

  • Wer versteht, was das linke Programm tut? Bitte ausprobieren!
  • Was ist der Unterschied zwischen getKeyWait() und input(“…”)?
  • Ich erkläre rechtes Programm (elif = else + if; rechtes ist kurze Version des linken).
  • Bonusfrage: Geht dasselbe auch nur mit if?
from gturtle import *       # Die ersten beiden Zeilen dienen nur dazu, dass der Befehl getKeyWait() bekannt ist.
makeTurtle()                # Ohne sie funktioniert das Programm leider nicht.
 
taste = getKeyWait()          
print(taste)
 
if taste == "a":
    print("a wie Anna")
else:
    if taste == "b":
        print("b wie Berta")
    else:
        if taste == "c":
            print("c wie Caesar")
        else:
            if taste == "d":
                print("d wie Daniel")
            else:
                if taste == "e":
                    print("E wie Emil")
                else:
                    print("Du hast keine der Tasten a, b, c, d, e gedrückt.")
 
dispose()     # Schliesst das Turtle-Fenster.
from gturtle import *
makeTurtle()
 
taste = getKeyWait()          
print(taste)
 
if taste == "a":
    print("a wie Anna")
elif taste == "b":
    print("b wie Berta")
elif taste == "c":
    print("c wie Caesar")
elif taste == "d":
    print("d wie Daniel")
elif taste == "e":
    print("E wie Emil")
else:
    print("Du hast keine der Tasten a, b, c, d, e gedrückt.")
 
dispose()

Einzelarbeit, ca. 15 Minuten.

Das folgende Programm nimmt so lange ein Einzelzeichen entgegen, bis die Taste “e” (für Exit oder Escape) gedrückt wird. Probiere es aus! Gerne auch im Debugging-Modus.

from gturtle import *
makeTurtle("black")
 
taste = " "                         # oder irgendetwas anderes ungleich "e"
 
                                    # Die folgende sogenannte "while"-Schleife funktioniert 
                                    # ähnlich wie eine repeat-Schleife: Der 
                                    # eingerückte Code-Block wird solange wiederholt
                                    # ausgeführt, wie die angegebene Bedingung gilt.
                                    # englisch WHILE = deutsch SOLANGE  
while taste != "e":  
    taste = getKeyWait()
 
    # Hier ist dein Code zu ergänzen!
 
dispose()

Erweitere diesen Code zu einem Zeichenprogramm mit den Tasten i, j, k, l als “Pfeil”-Tasten!

Die Schildkröte soll

  • beim Tastendruck i 10 Pixel vorwärts laufen;
  • beim Tastendruck k 10 Pixel rückwärts laufen;
  • beim Tastendruck j sich um $60^\circ$ nach links drehen;
  • beim Tastendruck l sich um $60^\circ$ nach rechts drehen.
  • Taste e bricht das Programm ab.
  • Bei jeder anderen Eingabe soll der Befehl print(“Taste ohne Funktion.”) ausgeführt werden.

Die erwünschte Lösung verwendet die obige “elegante” if-elif-…-elif-else-Variante der Selektion.

Bonusteilaufgaben: (bitte ausklappen)

Bonusteilaufgaben: (bitte ausklappen)

Erweitere dein Zeichenprogramm! Hier einige Vorschläge:

  • Tasten r, g, b, w verändern die Zeichenfarbe auf Rot, Gelb, Grün und Weiss.
  • Tasten + und - verändern die Dicke des Zeichenstifts. (Speichere die aktuelle Dicke des Stifts in einer Zusatzvariablen.)
  • Tasten p und m (alias Plus und Minus) verändern die Strecke, um die sich die Schildkröte jeweils bewegt.
  • Tasten deiner Wahl zum Anheben bzw. Absenken der Schildkröte (penUp(), penDown()).
  • Benutzerfreundlichkeit: Gib am Anfang per print(…) aus, welcher Tastendruck was bewirkt.
  • Gib etwa bei der Änderung der Dicke des Stifts per print(…) aus, wie dick der Stift nun ist. Ähnliches bei Farbänderung etc.
  • Auf Tastendruck w darf der Benutzer per input(“Bitte Winkel eingeben. ”) einen Winkel eingeben, um den sich die Schildkröte (nach rechts) drehen soll. Negative Winkel sorgen für Linksdrehung.
  • Taste c (wie “clear”) zum Löschen der Zeichnung.
  • Taste h (wie “home”) zum Bewegen der Schildkröte an Ausgangsposition.
  • Finde im Internet heraus, wie du deine Zeichnung als Datei (etwa im Format JPEG) abspeichern kannst!
  • … nun fehlt nicht mehr viel zu einem professionellen Zeichenprogramm …

Einzelarbeit, ca. 15 Minuten

Beachte die Hinweise unten und schreibe ein Programm, das dem Benutzer die folgenden oder mindestens drei Quizfragen deiner Wahl stellt:

  • Wie viele Kantone hat die Schweiz? (richtige Antwort 26)
  • Wie viele Einwohner hat die Schweiz ungefähr in Millionen? (akzeptiere 8 und 9 als richtige Antwort)
  • In welcher Stadt sitzt die Schweizer Regierung? (Bern)

Der Benutzer soll jeweils erfahren, ob die Antwort gestimmt hat; wenn nicht, soll die richtige Antwort genannt werden.

Am Ende soll als Auswertung die Anzahl richtiger Antworten ausgegeben werden.

Hinweise:

  • Verwende zur Abfrage jeweils den Befehl s = input(“Hier steht die Frage”) - dann musst du nicht unterscheiden, ob die Eingabe eine Zahl, Kommazahl oder Text ist.
  • Der Vergleich einer “Text-Variablen” s mit einer Zeichenkette geht mit s == “St. Gallen” bzw. mit s != “St. Gallen”. Statt Text-Variable sagt man auch “string”.

Bonusteilaufgabe: (bitte ausklappen)

Bonusteilaufgabe: (bitte ausklappen)

Der Benutzer soll nun bei jeder falsch beantworteten Frage zwei weitere Versuche haben. Versuche, dies mit einer repeat 3:-Schleife zu realisieren.

Hinweis: Verwende eine Variable, die 0 (oder False) ist, wenn die Frage noch nicht richtig beantwortet ist. Sonst wird sie 1 (oder True).

Alternativ geht es auch mit einer while-Schleife.

Du hast die Wahl:

  • Aufgabe 5 oder
  • Aufgabe 4 mit mindestens drei der Bonusteilaufgaben (oder ähnlich schwierigen Sachen deiner Wahl)
  • Aufgabe 2 mit mindestens drei der Bonusteilaufgaben (oder ähnlichen schwierigen Sachen deiner Wahl)
  • eine der beiden nachfolgenden Bonusaufgaben, also Aufgabe 6 oder Aufgabe 7

Hier ist der Anfang der Lösung von Aufgabe 4, falls jemand das in der Lektion noch nicht geschafft hatte. Bitte ausklappen.

Hier ist der Anfang der Lösung von Aufgabe 4, falls jemand das in der Lektion noch nicht geschafft hatte. Bitte ausklappen.

from gturtle import *
makeTurtle("black")
 
taste = " "                         # oder irgendetwas anderes ungleich "e"
 
                                    # Die folgende sogenannte "while"-Schleife funktioniert 
                                    # ähnlich wie eine repeat-Schleife: Der 
                                    # eingerückte Code-Block wird solange wiederholt
                                    # ausgeführt, wie die angegebene Bedingung gilt.
                                    # englisch WHILE = deutsch SOLANGE  
while taste != "e":  
    taste = getKeyWait()
 
    if taste == "i":
        forward(10)
    elif taste == "j":
        left(60)
    elif taste != "e":
        print("Taste ohne Funktion.")
 
dispose()

Abgabe bis spätestens Sonntagabend 23:59 Uhr vor der nächsten Doppellektion über den folgenden Link:

Erst selbst überlegen!

Erst selbst überlegen!

  • Du verstehst das Konzept der if-Selektion und kannst es in Beispielen sinnvoll anwenden.
  • Du kennst die drei (oder vier) Varianten der if-Selektion: Nur if oder if-else oder if-elif-…-elif-else (letzteres geht auch ohne else am Ende).
  • Du weisst, wie if und if-else-Selektion in einem Flussdiagramm dargestellt werden. (Die Darstellung ist im Wesentlichen dieselbe: Bei if-else steht im “Nein”-Ast etwas, bei if nichts. Die beiden “Ja”- und “Nein” Äste kommen dann eh wieder zusammen.)
  • Du hast einen ersten Eindruck, wie eine while-Schleife funktioniert.
  • Du kennst den Unterschied zwischen input(“…”) und getKeyWait().

Rasenmäher-Schildkröte

Lass die Schildkröte so lange geradeaus laufen, bis sie nahe am Rand des Fensters ist. Dann soll sie etwas zurück gehen und sich etwas drehen (dies können feste oder zufällige Werte sein); danach geht es wieder mit der Vorwärtsbewegung weiter etc.

Hinweis:

  • Mit den Befehlen getX() und getY() bekommst du die $x$- und $y$-Koordinate der Schlidkröte. Die Koordinaten des Fensters gehen von -400 bis 400 in $x$-Richtung und $-300$ bis $300$ in $y$-Richtung.
  • Mit while True: oder repeat: kannst du den nachfolgenden eingerückten Code-Block unendlich oft ausführen lassen.

Schildkröte als Billard-Ball

Wähle am Anfang einen zufälligen Startwinkel. Lass die Schildkröte geradeaus in diese Richtung laufen, bis sie auf den Rand des Fensters trifft. Dort soll sie wie ein Lichtstrahl bzw. wie eine idealisierte Billardkugel reflektiert werden.

Schaffst du es, dass die Billard-Schildkröte bei jeder Reflektion die Zeichenfarbe ändert? Die Farbe kann zufällig oder in einer festgelegten Reihenfolge - etwa rot-grün-blau - geändert werden.

Hinweise: Neben den Hinweisen bei der vorigen Aufgabe verwende:

  • Mit heading() bekommst du die aktuelle Richtung der Schildkröte in Grad; 0 bedeutet nach oben, 90 nach rechts etc. Es sind aber auch Werte über 360 wie 400 oder unter Null wie -35 möglich.
  • Mit setHeading(…) kannst du die Schildkröte in eine Richtung drehen.

Bitte einfach am Anfang des Programms oder der eingereichten Datei die Frage aufschreiben (mit oder ohne Hashtag # als Kommentareinleitungszeichen am Zeilenanfang).

Link zur Fragebox

Regen/Sonne Flussdiagramm

Regen/Sonne Flussdiagramm

Zu Aufgabe 1

Zu Aufgabe 1

Beim Ausführen merkt man, dass das Programm fehlerhaft ist (zwei Doppelpunkte fehlen, eine Einrückung falsch). Die beabsichtigte Korrektur sieht so aus:

alter = input("Gib dein Alter ein!")
 
# Erste Verwendung:
if alter < 0 or alter >= 130:
    print("Das glaube ich dir nicht.")
 
# Zweite Verwendung:
if alter == 0:
    print("Du bist ein Baby.")
else:
    print("Du bist kein Baby.")

(Flussdiagramme noch zu ergänzen)

Die Lösung der letzten Teilaufgabe ist:

alter = input("Gib dein Alter ein!")
 
if alter < 0 or alter >= 130:
    print("Das glaube ich dir nicht.")
else:
    if alter == 0:
        print("Du bist ein Baby.")
    else:
        print("Du bist kein Baby.")
 

Aufgabe 2: Zufällige Bewegung

Aufgabe 2: Zufällige Bewegung

Flussdiagramm dazu

from gturtle import *
from random import *
 
makeTurtle()
speed(-1)            # Das ist die schnellstmögliche Geschwindigkeit (abgesehen von hideTurtle())
s = 10
n = input("Wie oft soll sich die Schildkröte bewegen?")
 
repeat n:
    forward(s)
    if random() < 0.5:
        left(90)
    else:
        right(90)

Aufgabe 3: getKeyWait() und if-elif-…-elif-else kennenlernen

Aufgabe 3: getKeyWait() und if-elif-…-elif-else kennenlernen

Das Programm wartet auf einen Tastendruck und speichert diesen in der Variablen taste und gibt den Wert von taste aus. Je nach Eingabe wird dann in der verschachtelten if-Struktur entschieden, was ausgegeben wird.

Der Befehl input(“…”) nimmt eine Eingabe (die auch aus mehreren Zeichen bestehen kann) entgegen; die Eingabe muss mit der Return-Taste oder Klicken auf den Ok-Button abgeschlossen werden. Der Befehl getKeyWait() wartet auf den nächsten Tastendruck (nur ein Zeichen); die Eingabe wird nicht mit Return o. ä. abgeschlossen.

Es geht auch nur mit if, z. B. wie folgt. Beachte, dass die letzte if-Selektion deutlich komplizierter geworden ist!

from gturtle import *       # Die ersten beiden Zeilen dienen nur dazu, dass der Befehl getKeyWait() bekannt ist.
makeTurtle()                # Ohne sie funktioniert das Programm leider nicht.
 
taste = getKeyWait()          
print(taste)
 
if taste == "a":
    print("a wie Anna")
if taste == "b":
    print("b wie Berta")
if taste == "c":
    print("c wie Caesar")
if taste == "d":
    print("d wie Daniel")
if taste == "e":
    print("E wie Emil")
if taste != "a" and taste != "b" and taste != "c" and taste != "d" and taste != "e":                 
    print("Du hast keine der Tasten a, b, c, d, e gedrückt.")
 
dispose()     # Schliesst das Turtle-Fenster.

Aufgabe 4: Ferngesteuerte Turtle

Aufgabe 4: Ferngesteuerte Turtle

from gturtle import *
makeTurtle("black")
 
taste = " "                         # oder irgendetwas anderes ungleich "e"
 
                                    # Die folgende sogenannte "while"-Schleife funktioniert 
                                    # ähnlich wie eine repeat-Schleife: Der 
                                    # eingerückte Code-Block wird solange wiederholt
                                    # ausgeführt, wie die angegebene Bedingung gilt.
                                    # englisch WHILE = deutsch SOLANGE  
s = 10
 
while taste != "e":  
    taste = getKeyWait()
 
    if taste == "i":
        forward(s)
    elif taste == "j":
        left(60)
    elif taste == "k":
        backward(s)
    elif taste == "l":
        right(60)
    elif taste == "p":
        s = s + 1 
    elif taste == "m":
        s = s - 1
    elif taste == "w":
        winkel = input("Bitte Winkel eingeben. ")
        right(winkel)    
    elif taste == "h":
        home()
    elif taste != "e":
        print("Taste ohne Funktion.")
 
dispose()

Aufgabe 5: Quiz

Aufgabe 5: Quiz

n = 0 # Anzahl korrekter Antworten.
 
a = input("Wie viele Kantone hat die Schweiz?")
if a == 26:                                     # Achtung, manche haben hier a == "26" geschrieben. Jedoch: Der Befehl "input" speichert eine Zahleingabe wie 26 als Zahl, nicht als String!
    print("Korrekt!")
    n = n + 1
else:
    print("Leider falsch. Die richte Antwort wäre 26 gewesen.")
 
b = input("Wie viele Einwohner hat die Schweiz ungefähr in Millionen?")
if b == 8 or b == 9:
    print("Korrekt!")
    n = n + 1
else:
    print("Leider falsch. Die richte Antwort wäre 8 oder 9 gewesen.")
 
c = input("In welcher Stadt sitzt die Schweizer Regierung?")
if c == "Bern":
    print("Korrekt!")
    n = n + 1
else:
    print("Leider falsch. Die richte Antwort wäre Bern gewesen.")
 
print("Anzahl korrekter Antworten:")
print(n)
 
if n > 2: 
    print("Sehr gut!")
elif n == 0:
    print("Sehr schlecht!")

Und hier die Bonus-Variante (die ersten beiden Fragen per repeat, die dritte per while, damit du zwei Möglichkeiten siehst):

n = 0 # Anzahl korrekter Antworten.
v = 0 # Anzahl falsche Versuche
 
eingabeStimmt = 0
repeat 3:
    if eingabeStimmt == 0:
        a = input("Wie viele Kantone hat die Schweiz?")
        if a == 26:
            print("Korrekt!")
            n = n + 1
            eingabeStimmt = 1
        else:
            print("Leider falsch.")
            v = v + 1
if eingabeStimmt == 0:
    print("Alle drei Versuche falsch. Die richte Antwort wäre 26 gewesen.")
 
print(20 * "-" + " Neue Frage " + 20 * "-")
eingabeStimmt = 0
repeat 3:
    if eingabeStimmt == 0:
        b = input("Wie viele Einwohner hat die Schweiz ungefähr in Millionen?")
        if b == 8 or b == 9:
            print("Korrekt!")
            n = n + 1
            eingabeStimmt = 1
        else:
            print("Leider falsch.")
            v = v + 1
if eingabeStimmt == 0:
    print("Alle drei Versuche falsch. Die richte Antwort wäre 8 oder 9 gewesen.")
 
# Und nun die Variante mit der while-Schleife
 
 
print(20 * "-" + " Neue Frage " + 20 * "-")
nochVersuche = 3 # Anzahl der Versuche, die der Antwortende noch hat.
 
while nochVersuche > 0:
    c = input("In welcher Stadt sitzt die Schweizer Regierung?")
    nochVersuche = nochVersuche - 1
    if c == "Bern":
        print("Korrekt!")
        n = n + 1
        nochVersuche = 0
    else:
        print("Leider falsch.")
        v = v + 1
if c != "Bern":
    print("Alle drei Versuche falsch. Die richte Antwort wäre Bern gewesen.")
 
 
print(20 * "-" + " Auswertung " + 20 * "-")
print("Anzahl korrekt beantworteter Fragen:")
print(n)
print("Anzahl Fehlversuche:")
print(v)
 
if n == 3 and v == 0: 
    print("Sehr gut!")
else:
    print("Du kannst dich noch steigern!")          

Aufgabe 4: Konzentrische Quadrate

Aufgabe 4: Konzentrische Quadrate

Ich gebe zwei Lösungen:

  • In der ersten Lösung wird jedes Quadrat von der unteren linken Ecke aus gezeichnet und die Turtle wird davor entsprechend positioniert.
  • In der zweiten Lösung wird jedes Quadrat von der Mitte der oberen Seite gezeichnet und die Turtle wird davor entsprechend positioniert.

Erste Lösung

from gturtle import *
makeTurtle()
# hideTurtle()
 
n = input("Wie viele Quadrate?")
s = 10
differenz = 20
 
repeat n:
    repeat 4:
        forward(s)
        right(90)
    s = s + differenz
 
    penUp()
    left(90)
    forward(differenz / 2)
    right(90)
    backward(differenz / 2)
    penDown()

Zweite Lösung

from gturtle import *
makeTurtle()
# hideTurtle()
 
n = input("Wie viele Quadrate?")
s = 10
differenz = 20
 
repeat n:
    home()
    penUp()
    forward(s / 2)
    right(90)
    penDown()
 
    repeat 4:
        forward(s / 2)
        right(90)
        forward(s / 2)
 
    s = s + differenz

Aufgabe 6: Quadratische Spirale mit Roboter

Aufgabe 6: Quadratische Spirale mit Roboter

from mbrobot import *
 
n = 16    # Anzahl der Bewegungen, darf gerne verändert werden
 
zeitVorwaerts = 660
zeitRechtsdrehung = 450
# Diese Zeitangaben haben bei meinem Roboter (ungefähr)
# funktioniert. Im Simulationsmodus sind das aber keine
# rechten Winkel beim Abbiegen.
 
repeat n:
    forward()
    delay(zeitVorwaerts)
    right()
    delay(zeitRechtsdrehung)  
    zeitVorwaerts = zeitVorwaerts + 400
stop()
  • lehrkraefte/snr/informatik/bruehl-2022/auswahl.txt
  • Last modified: 2022/03/21 10:25
  • by Olaf Schnürer