LibreLogo
LibreLogo ist eine einfache, lokalisierte, Logo-artige Programmierumgebung mit Turtle-Vektorgrafiken fĂŒr den Informatikunterricht (Programmierung und Textverarbeitung), DTP und Grafikdesign. Lesen Sie mehr unter http://www.numbertext.org/logo/librelogo.pdf (englisch).
Symbolleiste LibreLogo
Die Symbolleiste LibreLogo (wÀhlen Sie
) enthĂ€lt SchaltflĂ€chen fĂŒr Turtle-Bewegungen, Programmstart und -stopp, Anfang, Bildschirm sĂ€ubern, Programmeditor, Syntaxhervorhebung, Ăbersetzen des Programmcodes und eine Eingabezeile (Befehlszeile).SchaltflĂ€chen fĂŒr Turtle-Bewegungen
Es gibt SchaltflĂ€chen fĂŒr die Logo-Befehle "VOR 10", "ZURĂCK 10", "LINKS 15" und "RECHTS 15". Ein Klick auf eine der SchaltflĂ€chen setzt auch den Fokus auf den Turtle-Umriss und rollt die Seite zu dessen Position.
Logo-Programm starten
Klicken Sie auf die SchaltflĂ€che âLogo-Programm startenâ, um den Text (oder nur den Text) des Writer-Dokuments als Logo-Programm auszufĂŒhren. In einem leeren Dokument wird ein Beispieltext eingefĂŒgt und ausgefĂŒhrt.
Klicken Sie auf die SchaltflĂ€che âStoppâ, um die ProgrammausfĂŒhrung anzuhalten.
Anfang
Klicken Sie auf die SchaltflĂ€che âAnfangâ, um die Position und Einstellungen des Turtles zurĂŒckzusetzen.
Bildschirm leeren
Klicken Sie auf die SchaltflĂ€che âBildschirm leerenâ, um die Zeichnungsobjekte aus dem Dokument zu entfernen.
Programmeditor/Syntaxhervorhebung/Ăbersetzen
Das Icon mit dem Zauberstab setzt ein doppelseitiges Layout fĂŒr die Programmbearbeitung, erweitert abgekĂŒrzte Logo-Begehle und konvertiert Logo-Befehle innerhalb eines Writer Dokuments in GroĂbuchstaben. Wechseln Sie die Sprache des Dokuments (wĂ€hlen Sie
) und klicken Sie auf diese SchaltflĂ€che, um den Logo-Programmcode in die gewĂ€hlte Sprache zu ĂŒbersetzen.Befehlszeile
BetĂ€tigen Sie die Eingabetaste innerhalb der Befehlszeile, um dessen Inhalt auszufĂŒhren. Um das Programm anzuhalten, klicken Sie auf die SchaltflĂ€che âStoppâ.
Halten Sie die Eingabetaste gedrĂŒckt, um den Inhalt der Befehlszeile wiederholt auszufĂŒhren, beispielsweise mit der folgenden Befehlsfolge:
VOR 200 LINKS 89
Um die Befehlszeile zu löschen, klicken Sie dreifach in diese oder verwenden Sie Strg+A, um alles zu markieren und mit der neuen Befehlsfolge zu ĂŒberschreiben.
Grafische BenutzeroberflĂ€che fĂŒr Grundeinstellungen des Turtles
Der Turtle in LibreLogo ist ein normales Zeichnungsobjekt mit fester GröĂe. Sie können dieses auf dem Standardweg positionieren und drehen, aber auch, indem Sie die Maus und das Symbol Drehen der Symbolleiste Zeichnungsobjekt-Eigenschaften verwenden. Ăndern Sie die Eigenschaften Linienbreite, Linienfarbe und FlĂ€chenfarbe des Turtles, so werden auch die Attribute STIFTBREITE, STIFTFARBE und FĂLLFARBE von LibreLogo gesetzt.
Bearbeitung des Programmcodes
LibreLogo-Zeichnungen und -Programmcode benutzen dasselbe Writer Dokument. Die LibreLogo-ZeichenflĂ€che befindet sich auf der ersten Seite des Writer Dokuments. Sie können einen Seitenumbruch vor dem LibreLogo-Programmcode einfĂŒgen und mittels des Icons mit dem Zauberstab aus der Symbolleiste Logo die Ansicht so optimieren, dass ein komfortables doppelseitiges Layout fĂŒr die Ansicht der LibreLogo-Programmierung zur VerfĂŒgung steht: Links (erste Seite) die ZeichenflĂ€che, rechts (zweite Seite) der LibreLogo-Programmcode.
LibreLogo Programmiersprache
LibreLogo ist eine leicht zu lokalisierende, Logo-artige Programmiersprache und durch die LibreOffice-Community bereits in diverse Sprachen ĂŒbersetzt. Es ist abwĂ€rtskompatibel zum Ă€lteren Logo-System, beispielsweise um es in der Bildung als einfache Programmiersprache zu verwenden.
ZU Dreieck :GröĂe
WIEDERHOLE 3 [
VOR :GröĂe
LINKS 120
]
ENDE
Dreieck 10 Dreieck 100 Dreieck 200
Unterschiede zur Logo-Programmiersprache
-
Listenelemente werden durch Kommata getrennt: POSITION [0, 0]
-
Programmblöcke und Listen werden unterschiedlich gehandhabt
-
-
Programmblöcke benötigen Leerstellen oder ZeilenumbrĂŒche bei Klammern: WIEDERHOLE 10 [ VOR 10 LINKS 36 ]
-
Listen benötigen anliegende Klammern: POSITION [0, 0] und nicht POSITION [ 0, 0 ]
-
-
Einzeilige Funktionsdeklarationen werden nicht unterstĂŒtzt (ZU und ENDE benötigen neue Zeilen).
Weitere Eigenschaften von LibreLogo
-
Doppelpunkte vor Variablennamen sind optional.
ZU Dreieck GröĂe
WIEDERHOLE 3 [ VOR GröĂe LINKS 120 ]
ENDE -
Zeichenketten können auch in AnfĂŒhrungszeichen oder in Python-Schreibweise notiert werden.
AUSGABE "Wort" ; Original Logo-Syntax
AUSGABE âBeliebiger Text.â ; Writer-Schreibweise
AUSGABE 'Beliebiger Text.' ; Python-Syntax -
Handhabung von Python-Listen und -Zeichenketten
AUSGABE âTextâ[2] ; gibt âxâ zurĂŒck
AUSGABE âTextâ[1:3] ; gibt âexâ zurĂŒck -
Python-artige FĂR-Schleifen
-
Python-artige Variablendeklaration:
x = 15
AUSGABE x -
Es gibt keine weiteren Suchfunktionen:
AUSGABE FĂLLFARBE
p = POSITION
AUSGABE p
WIEDERHOLE 10 [ POSITION BELIEBIG POSITION p ] -
Alternative Klammersetzung in Funktionsaufrufen
ZU Stern GröĂe Farbe
FĂLLFARBE Farbe
WIEDERHOLE 5 [ LINKS 72 VOR GröĂe RECHTS 144 VOR GröĂe ]
FĂLLEN
ENDE
Stern 100 ârotâ
Stern (100, âgrĂŒnâ)
Stern(100, âblauâ)
LibreLogo-Befehle
Grundsyntax
GroĂ- und Kleinschreibung
Bei Befehlen und Farben ist die GroĂ- und Kleinschreibung irrelevant:
AUSGABE âHallo, Welt!â
gibt âHallo, Welt, noch einmal!â zurĂŒck
Bei Variablennamen ist die GroĂ- und Kleinschreibung relevant:
a = 5
A = 7
AUSGABE a
AUSGABE A
Programmzeilen
AbsÀtze in einem Writer-Dokument sind LibreLogo-Programmzeilen. Eine Programmzeile kann dabei mehrere Befehle enthalten:
AUSGABE âHallo, Welt!â AUSGABE âLibreLogoâ
Befehle
Kommentare sind Zeilen oder Teilzeilen ab einem Semikolon und bis zum Ende der Zeile (des Absatzes).
; ein Kommentar
AUSGABE 5 * 5 ; ein Kommentar
Befehlszeilen auf mehrere AbsÀtze umbrechen
Es ist möglich, Programmzeilen auf mehrere AbsÀtze umzubrechen, indem das Zeichen Tilde (~) am Zeilenende notiert wird:
AUSGABE âDies ist eine sehr lange â + ~
âWarnmeldungâ
Turtle-Bewegungen
VOR (VR)
VOR 10 ; Bewegung vorwĂ€rts um 10 pt (1 pt â 0,373 mm)
VOR 10pt ; wie zuvor
VOR 0,5in ; Bewegung vorwÀrts um 0,5 inch (1 inch = 2,54 cm)
VOR 1" ; wie zuvor
VR 1mm
VR 1cm
ZURĂCK (ZK)
ZURĂCK 10 ; Bewegung rĂŒckwĂ€rts um 10 pt
LINKS (LI)
LINKS 90 ; Drehung um 90° gegen den Uhrzeigersinn
LINKS 90° ; wie zuvor
LI 3h ; wie zuvor (Uhrzeigerposition)
LI BEL ; Drehung um einen zufÀlligen Winkel
RECHTS (RE)
RECHTS 90 ; Drehung um 90° mit dem Uhrzeigersinn
FLIEGEN
FLIEGEN ; Turtle wird sich bewegen, ohne zu zeichnen
LAUFEN
LAUFEN ; Turtle wird sich zeichnend bewegen
POSITION (POS)
POSITION [0, 0] ; Drehung und Bewegung zur oberen linken Ecke
POSITION SEITE ; Drehung und Bewegung zur unteren rechte Ecke
POSITION [SEITE[0], 0] ; Drehung und Bewegung zur oberen rechten Ecke
POS BEL ; Drehung und Bewegung zu einer zufÀlligen Position auf der Seite
RICHTUNG (RI)
RICHTUNG 0 ; Drehung nach Norden
RICHTUNG 12h ; wie oben
RICHTUNG [0, 0] ; Drehung zur Ecke oben links
RI BEL ; Drehung in eine zufÀllige Richtung
Weitere Turtle-Befehle
VERBERGEN
VERBERGEN ; Verbirgt Turtle (bis der Befehl ZEIGEN aufgerufen wird)
ZEIGEN
ZEIGEN ; Zeigt Turtle an
ANFANG
ANFANG ; Setzt Turtle auf die Anfangsposition zurĂŒck
SĂUBERN
SĂUBERN ; entfernt alle Zeichnungsobjekte aus dem Dokument
FĂLLEN und SCHLIESSEN
FĂLLEN ; SchlieĂt die aktuelle Form oder Kurve und fĂŒllt sie
SCHLIESSEN ; SchlieĂt die aktuelle Form oder Kurve
Beispiel: ein gefĂŒlltes gleichzeitiges Dreieck:
VOR 50 LINKS 120 VOR 50 FĂLLEN
Beispiel: ein gleichseitiges Dreieck:
VOR 50 LINKS 120 VOR 50 SCHLIESSEN
Stifteinstellungen
STIFTBREITE/LINIENBREITE (SB/LB)
STIFTBREITE 100 ; Linie mit 100 pt Breite
STIFTBREITE BELIEBIG ; Genauso wie SB ZUFĂLLIG 10
STIFTFARBE/LINIENFARBE (SF/LF)
STIFTFARBE ârotâ ; VerĂ€ndert die Schriftfarbe in rot (fĂŒr mögliche Farben schlagen Sie unter Farbkonstanten nach)
STIFTFARBE [255, 255, 0] ; VerÀndert die Stiftfarbe in gelb (wie in der RGB-Tafel)
STIFTFARBE 0xffff00 ; VerÀndert die Stiftfarbe in gelb (Hexadezimalcode)
STIFTFARBE 0 ; VerÀndert die Stiftfarbe in schwarz (0x000000)
STIFTFARBE BELIEBIG ; VerÀndert die Stiftfarbe in eine zufÀllige Farbe
STIFTFARBE [5] ; VerĂ€ndert die Schriftfarbe in rot (fĂŒr Farb-IDs schlagen Sie unter Farbkonstanten nach)
STIFTFARBE âohneâ ; Ohne Farbe, um Formen ohne Umrandung zu zeichnen
SF â~rotâ ; VerĂ€ndert die Schriftfarbe in einen beliebigen roten Farbton
STIFTTRANSPARENZ/LINIENTRANSPARENZ (ST/LT)
STIFTTRANSPARENZ 80 ; Setzt die Transparenz der aktuellen Stiftfarbe auf 80 %
STIFTENDE/LINIENENDE (SE/LE)
STIFTENDE âkeinâ ; Ohne Linienende (Standard)
STIFTENDE ârundâ ; Rundes Linienende
SE âquadratâ ; Quadratisches Linienende
STIFTĂBERGANG/LINIENĂBERGANG (SĂ/LĂ)
STIFTĂBERGANG ârundâ ; Abgerundeter LinenĂŒbergang (Standard)
STIFTĂBERGANG âgehrungâ ; Scharfe Kante als LinienĂŒbergang
STIFTĂBERGANG âschrĂ€gâ ; Gerade Kante als LinienĂŒbergang
SĂ âkeinâ ; Kein LinienĂŒbergang
STIFTSTIL/LINIENSTIL (SS|LS)
STIFTSTIL âdurchgezogenâ ; Durchgezogene Linie (Standard)
STIFTSTIL âgepunktetâ ; Gepunktete Linie
STIFTSTIL âgestricheltâ ; Gestrichelte Linie
; Benutzerdefinierte Punkt-Strich Muster können mit folgenden Argumenten erzeugt werden:
; â Anzahl der benachbarten Punkte
; â LĂ€nge der Punkte
; â Anzahl der benachbarten Striche
; â LĂ€nge der Striche
; â Abstand der Punkte/Linien vom Nachbarn
; â Typ (optional):
; 0: Punkte als Rechtecke (Standard)
; 2: Punkte als Kreise (LÀnge und Abstand sind abhÀngig von der Stiftbreite)
SS [3, 1mm, 2, 4mm, 2mm, 2] ; ···ââ···ââ···ââ
FĂŒlleinstellungen
FĂLLFARBE (FF)
FĂLLFARBE âblauâ ; Mit blauer Farbe gefĂŒllt, vergleichen Sie STIFTFARBE
FĂLLFARBE âohneâ KREIS 10 ; Nicht gefĂŒllter Kreis
FĂLLFARBE [âblauâ, ârotâ] ; Farbverlauf von rot nach blau
FĂLLFARBE [[255, 255, 255], [255, 128, 0]] ; Farbverlauf von weiĂ nach orange
FĂLLFARBE [âblauâ, ârotâ, 1, 0, 0] ; Axialer Farbverlauf (zuzĂŒglich der erforderlichen Einstellungen fĂŒr Drehung und Umrandung), mögliche Werte sind: 0-5 = linear, axial, radial, elliptisch, quadratisch und rechteckig
FĂLLFARBE [ârotâ, âblauâ, 0, 90, 20] ; Linearer Farbverlauf, um 90° gedreht zur derzeitigen Turtleausrichtung und 20 % Rahmen
FĂLLFARBE [ârotâ, âblauâ, 0, 90, 20, 0, 0, 200, 50] ; Farbverlauf mit von 200 % zu 50 % abnehmender FarbintensitĂ€t
FF [BEL, BEL, 2, 0, 0, 50, 50] ; Radialer Farbverlauf mit zufÀlligen Farben, 50 % horizontaler und 50 % vertikaler Ausrichtung des Zentrums
FĂLLTRANSPARENZ (FT)
FĂLLTRANSPARENZ 80 ; Legt die Transparenz der aktuellen FĂŒllfarbe auf 80 % fest
FĂLLTRANSPARENZ [80] ; Ergibt einen Transparenzverlauf von 80 % auf 0 % abnehmend
FĂLLTRANSPARENZ [80, 20] ; Ergibt einen Transparenzverlauf von 80 % auf 20 % abnehmend
FĂLLTRANSPARENZ [80, 20, 1, 90] ; Ergibt einen axialen Transparenzverlauf, um 90° gedreht zur derzeitigen Turtleausrichtung
FT [80, 20, 2, 0, 20, 50, 50] ; Ergibt einen radialen Transparenzverlauf von auĂen 80 % auf innen 20 % Transparenz, mit 20 % Rahmen und 50 % horizontaler und 50% vertikaler Ausrichtung des Zentrums
FĂLLSTIL (FS)
FĂLLSTIL 0 ; Ohne Schraffuren (Standard)
FĂLLSTIL 1 ; Einfache schwarze Schraffur (horizontal)
FĂLLSTIL 2 ; Einfache schwarze Schraffur (45° nach rechts geneigt)
FĂLLSTIL 3 ; Einfache schwarze Schraffur (45° nach links geneigt)
FĂLLSTIL 4 ; Einfache schwarze Schraffur (vertikal)
FĂLLSTIL 5 ; Gekreuzte rote Schraffur (45° geneigt)
FĂLLSTIL 6 ; Gekreuzte rote Schraffur (horizontal/vertikal)
FĂLLSTIL 7 ; Gekreuzte blaue Schraffur (45° geneigt)
FĂLLSTIL 8 ; Gekreuzte blaue Schraffur (horizontal/vertikal)
FĂLLSTIL 9 ; Dreifach gekreuzte blaue Schraffur
FĂLLSTIL 10 ; Einfache schwarze Schraffur mit groĂen AbstĂ€nden (45° nach rechts geneigt)
; Benutzerdefinierte Schraffuren sind mit der Liste folgender Argumente möglich:
; â Stil (1: einfache, 2: doppelte, 3: dreifache Schraffur)
; â Farbe
; â Abstand
; â Neigung
FS [2, âgrĂŒnâ, 3 pt, 15°] ; Gekreuzte grĂŒne Schraffur (15° Neigung nach rechts)
Zeichnungsobjekte
KREIS
KREIS 100 ; Zeichnet den Umriss eines Kreises (Durchmesser: 100 pt)
ELLIPSE
ELLIPSE [50, 100] ; Zeichnet eine Ellipse mit 50 pt und 100 pt in den Durchmessern
ELLIPSE [50, 100, 2h, 12h] ; Zeichnet einen Ellipsensektor (Ausschnitt) (von Position 2 Uhr bis Position 12 Uhr im Uhrzeigersinn)
ELLIPSE [50, 100, 2h, 12h, 2] ; Zeichnet eine Ellipsensegment (Abschnitt)
ELLIPSE [50, 100, 2h, 12h, 3] ; Zeichnet einen Ellipsenbogen
QUADRAT
QUADRAT 100 ; Zeichnet den Umriss eines Quadrates (KantenlÀnge 100 pt)
RECHTECK
RECHTECK [50, 100] ; Zeichnet den Umriss eines Rechtecks (KantenlÀngen 50 pt und 100 pt)
RECHTECK [50, 100, 10] ; Zeichnet ein Rechteck mit abgerundeten Ecken
PUNKT
PUNKT ; Zeichnet einen Punkt in GröĂe und Farbe des Stiftes
SCHLIESSEN kann den letzten Punkt verbinden, FĂLLEN kann eine Form aus Punkten fĂŒllen. Beispielsweise kann man so einfach einen âflachenâ Stern, ausgehend vom Zentrum, zeichnen:
FLIEGEN
WIEDERHOLE 5 [
VOR 80
PUNKT
ZURĂCK 80
RECHTS 36
VOR 50
PUNKT
ZURĂCK 50
RECHTS 36
] FĂLLEN
SCHREIBE
SCHREIBE âTextâ ; Gibt "Text" an der Position des Turtles zurĂŒck
SCHREIBE "Text" ; Wie oberhalb
SCHREIBE âTextâ ; Wie oberhalb
SCHREIBE 'Text' ; Wie oberhalb
SCHREIBE "Text ; Wie oberhalb (nur fĂŒr einzelne Worte)
TEXT
KREIS 10 TEXT âTextâ ; FĂŒgt einem Zeichnungsobjekt Text hinzu
Schrifteinstellungen
SCHRIFTFARBE/TEXTFARBE (SCHF/TF)
SCHRIFTFARBE âgrĂŒnâ ; Ăndert die Schriftfarbe auf grĂŒn
SCHRIFTART (SCHA)
SCHRIFTART âLinux Libertine Gâ ; Ăndert die Schriftart auf die angegebene
SCHRIFTART âLinux Libertine G:smcp=1â ; Setzt zusĂ€tzlich Schrifteinstellungen (hier: KapitĂ€lchen)
SCHA âLinux Libertine G:smcp=1&onum=1â ; KapitĂ€lchen & alte Zahlen
SCHRIFTGRĂSSE/TEXTGRĂSSE (SCHG/TG)
SCHRIFTGRĂSSE 12 ; Ăndert die SchriftgröĂe auf 12 pt
SCHRIFTGEWICHT (SCHG)
SCHRIFTGEWICHT âfettâ ; Ăndert das Schriftgewicht auf "fett"
SCHG ânormalâ ; Setzt das Schriftgewicht zurĂŒck
SCHRIFTSTIL (SCHS)
SCHRIFTSTIL âkursivâ ; Ăndert den Schriftstil auf "kursiv"
SCHS ânormalâ ; Setzt den Schriftstil zurĂŒck
BILD
BILD kann verwendet werden fĂŒr
-
gruppierte Formen;
-
den Beginn neuer Linienformen;
-
das Speichern von SVG-Bildern und SVG/SMIL-Animationen;
-
Konsistenz bei Position und Linienform am linken Seitenrand.
Gruppierte Form
; BILD [ LibreLogo_Befehle ]
BILD [ VOR 100 Kreis 100 ] ; Eine Baum-Ă€hnliche gruppierte Form
Schlagen Sie auch unter "Gruppierung" in der LibreOffice Writer-Hilfe nach.
ZU Baum Ort
FLIEGEN POSITION Ort RICHTUNG 0 FAHREN
BILD [ VOR 100 KREIS 100 ] ; Eine Baum-Ă€hnliche gruppierte Form
ENDE
BILD [ Baum [230, 400] Baum [300, 400] ] ; Eine gruppierte Form innerhalb einer gruppierten Form
Neue Linienform beginnen
BILD ; Beginn einer neuen Linienform
VOR 10 BILD VOR 10 ; Zwei Linienformen
SVG-Bilderer speichern
BILD âBeispiel.svgâ [ KREIS 5 ] ; Speichert das Bild als SVG-Bilddatei im Benutzerordner
BILD âDesktop/Beispiel.svgâ [ VOR 100 KREIS 5 ] ; Wie oben, mit relativem Dateipfad
BILD â/home/user/Beispiel.svgâ [ KREIS 5 ] ; Mit absolutem Dateipfad unter Unix/Linux
BILD âC:\Beispiel.svgâ [ KREIS 5 ] ; Mit absolutem Pfad unter Windows
SVG/SMIL-Animationen speichern
BILD âAnimation.svgâ [ KREIS 5 WARTE 1000 KREIS 99 ] ; Speichert eine SVG/SMIL-Animation (beachten Sie WARTE)
BILD âAnimation2.svgâ [ KREIS 5 WARTE 1000 KREIS 99 WARTE 2000 ] ; Wie oben, aber die Verwendung von WARTE nach dem letzten Objekt bewirkt eine Schleife: Nach 2 Sekunden wird die Animation im SMIL-konformen Browser neu gestartet
Konsistenz am linken Seitenrand
Sie können BILD benutzen, um die Konsistenz von Position und Linienform am linken Seitenrand eines Writer-Dokuments zu erhalten:
BILD [ KREIS 20 POSITION [-100, 100] KREIS 20 ]
Schleifen
WIEDERHOLE (WDH)
; WIEDERHOLE Anzahl [ Befehle ]
WIEDERHOLE 10 [ VOR 10 LINKS 45 KREIS 10 ] ; FĂŒhrt die Anweisungen 10-mal aus
; Anzahl ist optional
WDH [ POS BEL ] ; Endlosschleife
ZĂHLER
ZĂ€hlvariable fĂŒr Schleifen (auch mit FĂR und SOLANGE zu verwenden).
WIEDERHOLE 100 [ VOR ZĂHLER LINKS 90 ]
FĂR IN
Schleife fĂŒr Listenelemente:
FĂR i IN [1, 5, 7, 9, 11] [
VOR i
LINKS 90
]
Schleife fĂŒr Buchstaben in einer Zeichenkette:
FĂR i IN âTextâ [
SCHREIBE i
VOR 10
]
SOLANGE
SOLANGE WAHR [ POSITION BELIEBIG ] ; Endlosschleife
SOLANGE ZĂHLER <= 10 [ VOR 50 LINKS 36 ]; Wie WIEDERHOLE 10 [ ... ]
ABBRUCH
Beendet die AusfĂŒhrung der Schleife.
WIEDERHOLE [ ; Endlosschleife
POSITION BELIEBIG
WENN ZĂHLER = 100 [ ABBRUCH ] ; Wie WIEDERHOLE 100 [ ... ]
]
WEITER
Springt zur nÀchsten Wiederholung der Schleife.
WIEDERHOLE 100 [
POSITION BELIEBIG
WENN ZĂHLER % 2 = 0 [ WEITER ]
KREIS 10 ; Zeichnet an jeder zweiten Position einen Kreis
]
Bedingungen
WENN
; WENN Bedingung [ wenn wahr ]
; WENN Bedingung [ wenn wahr ] [ wenn falsch ]
WENN a < 10 [ GIB âkleinâ ]
WENN a < 10 [ AUSGABE âkleinâ ] [ AUSGABE âgroĂâ ]
UND, ODER, NICHT
Logische Operatoren.
WENN a < 10 UND NICHT a = 5 [ AUSGABE â0, 1, 2, 3, 4, 6, 7, 8 oder 9â ]
WENN a < 10 UND a != 5 [ AUSGABE â0, 1, 2, 3, 4, 6, 7, 8 oder 9â ] ; Wie oben
Unterprogramme
ZU, ENDE
Neues Wort (oder neues Programm).
ZU Dreieck
WIEDERHOLE 2 [ VOR 100 RECHTS 120 ] FĂLLEN
ENDE
WIEDERHOLE 10 [ Dreieck FLIEGEN POSITION BELIEBIG LAUFEN ]
RĂCKGABE
Gibt den Wert einer Funktion zurĂŒck.
ZU Zufallsbuchstabe
RĂCKGABE ZUFĂLLIG âqwertzuiopasdfghjklyxcvbnmâ
ENDE
AUSGABE Zufallsbuchstabe + Zufallsbuchstabe + Zufallsbuchstabe ; Gibt eine Zeichenkette aus 3 zufĂ€lligen Buchstaben zurĂŒck
STOPP
Beendet einen Prozess.
ZU Beispiel Zahl
WENN Zahl < 0 [ STOPP ]
AUSGABE WURZEL Zahl ; Gibt die Quadratwurzel zurĂŒck
]
Beispiel 100
Beispiel -1 ; Ohne Ausgabe und ohne Fehlermeldung
Beispiel 25
Standardvariablen
BELIEBIG (BEL)
Standard-Zufallswert fĂŒr Farben und anderes.
STIFTFARBE BELIEBIG ; ZufÀllige Stiftfarbe
WAHR
Wahrheitswert.
SOLANGE WAHR [ POSITION BELIEBIG ] ; Endlosschleife
AUSGABE WAHR ; Gibt WAHR zurĂŒck
FALSCH
Wahrheitswert.
SOLANGE NICHT FALSCH [ POSITION BELIEBIG ] ; Endlosschleife
AUSGABE FALSCH ; Gibt FALSCH zurĂŒck
SEITE
AUSGABE SEITE ; Gibt eine Liste mit den SeitenmaĂen in Points zurĂŒck, beispielsweise [595.30, 841.89]
PI/Ï
AUSGABE PI ; Gibt 3,14159265359 zurĂŒck
Ein-/Ausgabe
AUSGABE
AUSGABE âTextâ ; Gibt "Text" in einer Dialogbox zurĂŒck
AUSGABE 5 + 10 ; Gibt 15 zurĂŒck
EINGABE
AUSGABE EINGABE âEingabewert?â ; Gibt den Text zurĂŒck und fragt nach einer Eingabe in einer Dialogbox
AUSGABE DEZIMAL (EINGABE âErste Zahl?â) + DEZIMAL (EINGABE âZweite Zahlâ) ; Einfacher Rechner
WARTE
WARTE 1000 ; HĂ€lt die ProgrammausfĂŒhrung fĂŒr 1000 ms (1 Sekunde) an
GLOBAL
Setzt globale Variablen in Prozessen.
GLOBAL ĂŒber
ĂŒber = âLibreLogoâ
ZU Beispiel
AUSGABE ĂŒber
GLOBAL ĂŒber ; Um die globale Variable neu zu belegen
ĂŒber = âNeuer Wert fĂŒr die globale Variableâ
ENDE
Beispiel
AUSGABE ĂŒber
Funktionen
ZUFĂLLIG
AUSGABE ZUFĂLLIG 100 ; Zufallszahl (0 <= x <= 100)
AUSGABE ZUFĂLLIG âTextâ ; Gibt zufĂ€llig einen Buchstaben aus der Zeichenkette "Text" zurĂŒck
AUSGABE ZUFĂLLIG [1, 2] ; ZufĂ€lliges Element aus der Liste (1 oder 2)
GANZ
AUSGABE GANZ 3,8 ; Gibt 3 zurĂŒck (ganzzahliger Anteil von 3,8)
AUSGABE GANZ ZUFĂLLIG 100 ; Ganzzahlige Zufallszahl (0 <= x <= 100)
AUSGABE GANZ â7â ; Ăndert eine Ziffernfolge in eine ganze Zahl um
DEZIMAL
; Wandelt eine Ziffernfolge in eine Dezimalzahl um
AUSGABE 2 * DEZIMAL â5,5â ; Gibt 11,0 zurĂŒck
ZEICHEN
; Wandelt eine Zahl in eine Zeichenkette um
AUSGABE âErgebnis: â + ZEICHEN 5 ; Gibt "Ergebnis: 5" zurĂŒck
AUSGABE 10 * ZEICHEN 5 ; Gibt 5555555555 zurĂŒck
WURZEL
AUSGABE WURZEL 100 ; Gibt 10 zurĂŒck, die Quadratwurzel aus 100
SIN
AUSGABE SIN 90 * PI/180 ; Gibt 1,0 zurĂŒck (Sinus von 90° im BogenmaĂ)
COS
AUSGABE COS 0 * PI/180 ; Gibt 1,0 zurĂŒck (Kosinus von 0° im BogenmaĂ)
LOG10
AUSGABE LOG10 100 ; Gibt 2,0 zurĂŒck (den Logarithmus von 100 zur Basis 10)
RUNDE
AUSGABE RUNDE 3,8 ; Gibt 4 zurĂŒck (den gerundeten Wert von 3,8)
AUSGABE RUNDE ZUFĂLLIG 100 ; Zufallszahl (0 <= x <= 100)
BETRAG
AUSGABE BETRAG -10 ; Gibt 10 zurĂŒck, den Betrag des Wertes -10
ZĂHLE
AUSGABE ZĂHLE âTextâ ; Gibt 4 zurĂŒck, die Anzahl der Buchstaben in "Text"
AUSGABE ZĂHLE [1, 2, 3] ; Gibt 3 zurĂŒck, die Anzahl der Elemente der Liste
MENGE
; Wandelt eine Liste in eine Python-Menge (eine Liste einmaliger Elemente) um
AUSGABE MENGE [4, 5, 6, 6] ; Gibt {4, 5, 6} zurĂŒck
AUSGABE MENGE [4, 5, 6, 6] | MENGE [4, 1, 9] ; Gibt {1, 4, 5, 6, 9} zurĂŒck, die vereinigte Menge beider Listen
AUSGABE MENGE [4, 5, 6, 6] & MENGE [4, 1, 9] ; Gibt {4} zurĂŒck, die Schnittmenge beider Listen
AUSGABE MENGE ([4, 5, 6, 6]) - MENGE [4, 1, 9] ; Gibt {5, 6} zurĂŒck, die Differenz beider Listen
AUSGABE MENGE [4, 5, 6, 6] ^ MENGE [4, 1, 9] ; Gibt {1, 5, 6, 9} zurĂŒck, die symmetrische Differenz beider Listen
FOLGE
; Python-artige Listengeneration (eine Folge von Zahlen)
AUSGABE FOLGE 10 ; Gibt [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] zurĂŒck, die Folge mit den Zahlen von 0 bis 9
AUSGABE FOLGE 3 10 ; Gibt [3, 4, 5, 6, 7, 8, 9] zurĂŒck, die Folge mit den Zahlen von 3 bis 9
AUSGABE FOLGE 3 10 3 ; Gibt [3, 6, 9] zurĂŒck, die Folge mit den Zahlen von 3 bis 9 in 3er Intervallen
FĂR i IN FOLGE 10 50 10 [ ; Schleife mit den Zahlen [10, 20, 30, 40]
VOR i
LINKS 90
]
LISTE
; Entfernt doppelte Elemente aus einer Liste
AUSGABE LISTE (MENGE [1, 3, 5, 5, 2, 1]) ; Gibt [1, 3, 5, 2] zurĂŒck
TUPEL
Konvertierung in ein Python-Tupel (eine nicht Ànderbare Liste)
AUSGABE TUPEL [4, 5]
SORTIERT
Gibt eine sortierte Liste zurĂŒck.
AUSGABE SORTIERT [5, 1, 3, 4]; Gibt [1, 3, 4, 5] zurĂŒck
ERSETZT
Ersetzt eine Zeichenkette mittels regex-Mustern (regulĂ€re AusdrĂŒcke).
AUSGABE ERSETZT (âtâ, âTâ, âtextâ) ; Gibt âTextâ zurĂŒck, wobei âtâ durch âTâ ersetzt wurde
AUSGABE ERSETZT (â(.)â, â\\1\\1â, âtextâ) ; Gibt âtteexxttâ zurĂŒck, wobei jeder Buchstabe verdoppelt wurde
SUCHE
Sucht nach einer Zeichenkette mittels regex-Mustern.
WENN SUCHE (â\tâ, âWortâ) [ AUSGABE âBuchstabe ist im Wort.â ]
FINDEALLE
Findet alle Zeichenketten innerhalb der Eingabezeichenkette, die dem angegebenen regex-Muster entsprechen.
AUSGABE FINDEALLE (â\w+â, âHunde, Katzen.â) ; Gibt [âHundeâ, âKatzenâ] zurĂŒck, die Liste aller Worte.
MIN
AUSGABE MIN [1, 2, 3] ; Gibt 1 zurĂŒck, das kleinste Element der Liste
MAX
AUSGABE MAX [1, 2, 3] ; Gibt 3 zurĂŒck, das gröĂte Element der Liste
Farbkonstanten
STIFTFARBE âSILBERâ ; Setzt die angegebene Farbe
STIFTFARBE [1] ; Setzt die Farbe ĂŒber IDs
STIFTFARBE â~SILBERâ ; Setzt einen zufĂ€lligen Silberton
ID |
Name |
0 |
schwarz |
1 |
silber |
2 |
grau |
3 |
weiĂ |
4 |
rotbraun |
5 |
rot |
6 |
lila |
7 |
magenta |
8 |
grĂŒn |
9 |
hellgrĂŒn |
10 |
dunkelgrĂŒn |
11 |
gelb |
12 |
dunkelblau |
13 |
blau |
14 |
blaugrĂŒn |
15 |
tĂŒrkis/cyan |
16 |
rosa |
17 |
dunkelrot |
18 |
orange |
19 |
gold |
20 |
violett |
21 |
hellblau |
22 |
dunkelbraun |
23 |
braun |
24 |
ohne |