LibreLogo
LibreLogo er et simpel Logo-lignende programmeringsmiljø med skildpadde vektorgrafik til undervisning og programmering (programmer og tekstbehandling), Dtp OG GRAFISK DESIGN. Se http://www.numbertext.org/logo/librelogo.pdf.
LibreLogo værktøjslinje
Værktøjslinjen LibreLogo (
) indeholder ikoner for skildpaddebevægelser, programstart, programstop, hjem, Nulstil skærm, programredigering/syntaksfremhævning/oversættelse og et indtastningsfelt (kommandolinje).Ikoner til skildpaddebevægelser
De svarer til de samme Logo-kommandoer “FORWARD 10”, “BACK 10”, “LEFT 15”, “RIGHT 15”. Når du klikker på et af disse ikoner, vil markøren fokusere på skildpadden og siden vil rulle til dens placering.
Start Logo-program
Klik på ikonet "Start Logo-program" for at udføre teksten (eller kun den markerede tekst) i Writer-dokumentet som et LibreLogo-program. I et tomt dokument vil et eksempel på et program blive indsat og udført.
Klik på ikonet "stop" for at stoppe programmet.
Hjem
Vælg ikonet "hjem" for at nulstille skildpaddens position og indstillinger.
Ryd skærm
Vælg ikonet "ryd skærm" for at fjerne den tegnede genstand fra dokumentet.
Programredigering/Syntaksfremhævning/Oversættelse
"Tryllestavs"-ikonet skaber et 2-sidet layout til programredigering, udvider og konverterer de forkortede Logo-kommandoer, som er skrevet med små bogstaver i Writer-dokumentet, til store bogstaver. Ændr standardsproget for dokumenter (
) og klik på dette ikon for at oversætte Logo-programmet til det valgte sprog.Kommandolinje
Tryk Enter i kommandolinjen for at afvikle indholdet. For at stoppe programmet kan du klikke på “Stop”-
Hold Enter nede for at gentage kommandolinjen, for eksempel med følgende kommandosekvens:
FORWARD 200 LEFT 89
For at nulstille kommandolinjen, kan du klikke tre gange efter hinanden i feltet, eller trykke CRTL+A for at markere den aktuelle kommando, og skrive for at overskrive med en ny kommando.
Grafisk brugergrænseflade og grundlæggende skildpaddeindstillinger
Skildpaddeformen i LibreLogo er et almindeligt tegneobjekt med fast størrelse. Du kan også placere og rotere på normal vis, ved hjælp af musen og rotations-ikonet i værktøjslinjen Tegneobjekteegenskaber. Ændring af linje tykkelse, linje farve og områdefarve for skildpadden sker med LibreLogo attribut-kommandoerne PENSIZE, PENCOLOR og FILLCOLOR.
Programredigering
LibreLogo tegninger og programmer bruger samme Writerdokument. LibreLogo lærredet er på første side af dokumentet. Du kan med fordel indsætte et sideskift før LibreLogo programmet, og indstille zoomfaktor og skriftstørrelse så du får vist de to sider ved siden af hinanden: Venstre (første) side er lærredet og anden (højre) side er programmet.
Programmeringssproget LibreLogo
LibreLogo er et let oversætteligt logo-lignede programmeringssprog, som er oversat til adskillige sprog. Det er bagudkompatibelt med ældre Logo-systemer i tilfælde af simple Logo-programmer i undervisningssammenhænge.
TO triangle :size
REPEAT 3 [
FORWARD :size
LEFT 120
]
END
triangle 10 triangle 100 triangle 200
Forskelle fra det oprindelige Logo programmeringssprog
-
Indhold af lister er kommasepareret: POSITION [0, 0]
-
Programblokke og lister er forskellige
-
-
Programblokke skal adskilles af et mellemrum eller linjeskift ved paranteserne: REPEAT 10 [ FORWARD 10 LEFT 36 ]
-
Lister skal have lukkede paranteser (uden afstand): POSITION [0, 0], og ikke POSITION [ 0, 0 ]
-
-
Deklarationer i enkeltlinjefunktioner understøttes ikke (TO og END skal have ny linje).
Andre funktioner i LibreLogo
-
Kolon er valgfri foran variabelnavne.
TO triangle size
REPEAT 3 [ FORWARD size LEFT 120 ]
END -
Strengnotation understøtter også ortografisk og Python syntaks.
PRINT "ord ; original Logo-syntaks
PRINT “Vilkårlig tekst.” ; retskrivning, Writer
PRINT 'Vilkårlig tekst.' ; Python-syntaks -
Python liste- og strenghåndtering
PRINT “text”[2] ; skriv “x”
PRINT “text”[1:3] ; skriv “ex” -
Python-lignende FOR løkke
-
Python-lignende deklaration af variabler:
x = 15
PRINT x -
Der er ingen ekstra forespørgselsfunktioner:
PRINT FILLCOLOR
p = POSITION
PRINT p
REPEAT 10 [ POSITION ANY POSITION p ] -
Alternativ brug af parenteser i funktionskald
TO star size color
FILLCOLOR color
REPEAT 5 [ LEFT 72 FORWARD size RIGHT 144 FORWARD size ]
FILL
END
star 100 “red”
star (100, “green”)
star(100, “blue”)
LibreLogo kommandoer
Grundlæggende syntaks
Følsomhed for små og store bogstaver
Kommandoer og farvekonstanter er følsomme for små og store bogstaver.
PRINT “Hej, verden!”
print “Hej igen, verden!”
Navne på variabler er følsomme for små og store bogstaver:
a = 5
A = 7
PRINT a
PRINT A
Programlinjer
Linjer i et LibreLogo program er afsnit i LibreOffice Writer dokumentet. En programlinje kan indeholde flere kommandoer:
PRINT “Hello, World!” PRINT “LibreLogo”
Kommentarer
Linjer eller linjedele er kommentarer fra et semikolon til slutningen af en linje (et afsnit):
; nogle kommentarer
PRINT 5 * 5 ; nogle kommentarer
Ombryd programlinjer til flere afsnit
Det er muligt at ombryde en programlinje til flere afsnit ved at bruge tegnet tilde (~) sidst på linjen:
PRINT “Dette er en meget lang ” + ~
“advarselsbesked”
Skildpaddebevægelse
FORWARD (fd) fremad
FORWARD 10 ; flyt 10pt (1pt = 1/72 inch = 0.35 mm)
FORWARD 10pt ; se ovenfor
FORWARD 0.5in ; flyt forward 0.5 inch (1 inch = 2.54 cm) fremad
FORWARD 1" ; se ovenfor
FD 1mm
FD 1cm
BACK (bk) tilbage
BACK 10 ; flyt 10pt tilbage
LEFT (lt) venstre
LEFT 90 ; drej 90 grader mod uret
LEFT 90° ; se ovenfor
LT 3h ; se ovenfor (på uret)
LT any ; drej til en tilfældig position
RIGHT (rt) højre
RIGHT 90 ; drej 90 der med uret
PENUP (pu)
PENUP ; skildpadden vil bevæge sig uden af tegne
PENDOWN (pd)
PENDOWN ; skildpadden bevæger sig og tegner
POSITION (pos)
POSITION [0, 0] ; drej og flyt til øverste, venstre hjørne
POSITION PAGESIZE ; drej og flyt til nederste højre hjørne
POSITION [PAGESIZE[0], 0] ; drej og flyt til øverste højre hjørne
POSITION ANY ; drej og flyt til en tilfældig position
HEADING (seth) retning
HEADING 0 ; drej mod nord
HEADING 12h ; Se ovenfor
HEADING [0, 0] ; drej mod øverste venstre hjørne
HEADING ANY ; drej til en vilkårlig retning
Andre skildpaddekommandoer
HIDETURTLE (ht) skjul skildpadden
HIDETURTLE ; skjul skildpadden (indtil kommandoen showturtle)
SHOWTURTLE (st) vis skildpadden
SHOWTURTLE ; vis skildpadden
HOME hjem
HOME ; nulstil oprindelig skildpaddeposition
CLEARSCREEN (cs)
CLEARSCREEN ; slet dokumentets tegnede objekter
FILL og CLOSE
FILL ; luk og fyld den aktuelle streg-figur eller punkter
CLOSE ; luk den aktuelle streg-figur eller forbind de aktuelle punkter
Eksempel: udfyldning af en regulær trekant:
FORWARD 50 LEFT 120 FORWARD 50 FILL
Eksempel: tegne en regulær trekant:
FORWARD 50 LEFT 120 FORWARD 50 CLOSE
Indstilling af pen
PENSIZE (ps)
PENSIZE 100 ; linjens bredde er 100 punkter
PENSIZE ANY ; svarende til PENSIZE RANDOM 10
PENCOLOR/PENCOLOUR (pc)
PENCOLOR “red” ; sætter pennefarven til rød (med farvens navn, se farvekonstanter)
PENCOLOR [255, 255, 0] ; sætter farven til gul (RGB liste)
PENCOLOR 0xffff00 ; set farven til gul (hexa decimal kode)
PENCOLOR 0 ; sætter farven til sort (0x000000)
PENCOLOR ANY ; tilfældig farve
PENCOLOR [5] ; sæt farven til rød med farveidentifikator, se farvekonstanter)
PENCOLOR “invisible” ; usynlig pennefarve til figurer uden synligt omrids
PENCOLOR “~red” ; sæt farven til en tilfældig rød
PENTRANSPARENCY
PENTRANSPARENCY 80 ; sæt gennemsigtigheden for den aktuelle penfarve til 80%
PENCAP/LINECAP
PENCAP “none” ; uden ekstra linjeafslutning (default)
PENCAP “round” ; afrundet linjeafslutning
PENCAP “square” ; kantet linjeafslutning
PENJOINT/LINEJOINT
PENJOINT “rounded” ; afrundet linjesammenføjning (standard)
PENJOINT “miter” ; spids linjesammenføjning
PENJOINT “bevel” ; affaset linjesammenføjning
PENJOINT “none” ; ingen linjesammenføjning
PENSTYLE
PENSTYLE “solid” ; ubrudt linje (standard)
PENSTYLE “dotted” ; prikket linje
PENSTYLE “dashed” ; stiplet linje
; tilpasset prik-stregmønster specificeret af en liste med disse argumenter:
; – antal prikker i træk
; – prikkers længde
; – antal streger i træk
; – stregens længde
; – afstand mellem prikker/steger
; – type (valgfri):
; 0 = prikker er rektangulære (standard)
; 2 = prikker er kvadratiske (længder og afstande er i forhold til stregtykkelsen)
PENSTYLE [3, 1mm, 2, 4mm, 2mm, 2] ; ...––...––...––
Indstillinger for fyld
FILLCOLOR/FILLCOLOUR (fc)
FILLCOLOR “blue” ; udfyld med blå farve, se også PENCOLOR
FILLCOLOR “invisible” CIRCLE 10 ; uudfyldt cirkel
FILLCOLOR [“blue”, “red”] ; gradient mellem rød og blå
FILLCOLOR [[255, 255, 255], [255, 128, 0]] ; mellem hvid og orange
FILLCOLOR [“blue”, “red”, 1, 0, 0] ; definer aksial gradient (med den ønskede rotation og kant), mulige værdier: 0-5 = lineær, aksial, radial, elliptisk, kvadrat og rektangel - gradienter
FILLCOLOR [“red”, “blue”, 0, 90, 20] ; lineær med 20% kant, roteret 90 grader fra den retning, skildpadden peger
FILLCOLOR [“red”, "blue”, 0, 90, 20, 0, 0, 200, 50] ; fra 200% til 50% intensitet
FILLCOLOR [ANY, ANY, 2, 0, 0, 50, 50] ; radial gradient med tilfældige farver og 50-50% vandrette og lodrette positioner af centret
FILLTRANSPARENCY
FILLTRANSPARENCY 80 ; definer gennemsigtigheden af den aktuelle udfyldningsfarve til 80%
FILLTRANSPARENCY [80] ; definer lineær gennemsigtig gradient fra 80% til 0%
FILLTRANSPARENCY [80, 20] ; definer lineær gennemsigtig gradient fra 80% til 20%
FILLTRANSPARENCY [80, 20, 1, 90] ; definer aksial gennemsigtig gradient roteret 90 grader fra den retning, skildpadden peger
FILLTRANSPARENCY [80, 20, 2, 0, 20, 50, 50] ; definer radial gennemsigtig gradient fra ydre 80% til indre 20% transparens med 20% kant og med 50-50% vandrette og lodrette positioner af centret
FILLSTYLE
FILLSTYLE 0 ; fyld uden skravering (standard)
FILLSTYLE 1 ; sort enkeltskravering (vandret)
FILLSTYLE 2 ; sort enkeltskravering (45°)
FILLSTYLE 3 ; sort enkeltskravering (-45°)
FILLSTYLE 4 ; sort enkeltskravering (lodret)
FILLSTYLE 5 ; rød krydsskravering (45°)
FILLSTYLE 6 ; rød krydsskravering (0°)
FILLSTYLE 7 ; blå krydsskravering (45°)
FILLSTYLE 8 ; blå krydsskravering (0°)
FILLSTYLE 9 ; blå trippelskravering
FILLSTYLE 10 ; sort bred enkeltskravering (45°)
; tilpasset skravering efter en liste med disse argumenter:
; – stil (1 = single, 2 = double, 3 = triple hatching)
; – farve
; – afstand
; – gradtal
FILLSTYLE [2, “green”, 3pt, 15°] ; green crossed hatches (15°)
Tegneobjekter
CIRCLE
CIRCLE 100 ; tegn en cirkel (diameter = 100pt)
ELLIPSE
ELLIPSE [50, 100] ; tegn en ellipse med akserne 50 and 100
ELLIPSE [50, 100, 2h, 12h] ; tegn en ellipsesektor (fra position kl. 2 til kl. 12)
ELLIPSE [50, 100, 2h, 12h, 2] ; tegn et ellipsesegment
ELLIPSE [50, 100, 2h, 12h, 3] ; tegn en ellipsebue
SQUARE
SQUARE 100 ; tegner et kvadrat (størrelse = 100pt)
RECTANGLE
RECTANGLE [50, 100] ; tegner et rektangel (50×100pt)
RECTANGLE [50, 100, 50] ; tegner et rektangel med runde hjørner
POINT punkt
POINT ; tegner et punkt med pennens størrelse og farve
CLOSE kan forbinde de sidste punkter, FILL kan fylde figuren defineret af punkterne. For eksempel er det nemt at tegne en “flad” stjerne, ved at starte fra dens centrum:
PENUP
REPEAT 5 [
FORWARD 80
POINT
BACK 80
RIGHT 36
FORWARD 50
POINT
BACK 50
RIGHT 120
] FILL
LABEL
LABEL “tekst” ; udskriver tekst på skildpaddens position
LABEL 'tekst' ; se herover
LABEL "tekst ; se herover (kun for enkelte ord)
TEXT
CIRCLE 10 TEXT “text” ; vælg teksten til det aktuelle tegneobjekt
Skrifttypeindstillinger
FONTCOLOR/FONTCOLOUR Skriftfarve
FONTCOLOR “green” ; vælg skriftfarve
FONTFAMILY
FONTFAMILY “Linux Libertine G” ; angiv skrifttype (familie)
FONTFAMILY “Linux Libertine G:smcp=1” ; angiv også skrifteffekter (små bogstaver)
FONTFAMILY “Linux Libertine G:smcp=1&onum=1” ; små bogstaver + gammeldags stil
FONTSIZE skriftstørrelse
FONTSIZE 12 ; vælg 12pt
FONTWEIGHT skrifttypens vægt
FONTWEIGHT “bold” ; vælg fed skrifttype
FONTWEIGHT “normal” ; vælg normal vægt
FONTSTYLE Skrifttypestil
FONTSTYLE “italic” ; vælg kursiv
FONTSTYLE “normal” ; vælg normal
PICTURE (pic) Billede
PICTURE er til
-
gruppering af figurer;
-
begynde nye stregfigurer
-
Gemmer SVG-billeder og SVG/SMIL-animationer;
-
at fastholde sammenhængen mellem positioner og stregfigurer i forhold til venstre kant.
Gruppering af figurer
; PICTURE [ LibreLogo_commands ]
PICTURE [ FORWARD 100 CIRCLE 100 ] ; træ-lignende grupperet figur
Se også "Gruppe" i hjælpen for LibreOffice Writer
TO tree location
PENUP POSITION location HEADING 0 PENDOWN
PICTURE [ FORWARD 100 CIRCLE 100 ] ; træ-lignende grupperet figur
END
PICTURE [ tree [230, 400] tree [300, 400] ] ; grupperede figurer i en grupperet figur
at starte nye stregfigurer
PICTURE ; start en ny stregfigur
FORWARD 10 PICTURE FORWARD 10 ; to stregfigurer
Gemmer SVG-billeder
PICTURE “eksampel.svg” [ CIRCLE 5 ] ; gem billeder som et SVG-billede i brugerens hjemmemappe
PICTURE “Skrivebord/eksempel.svg” [ FORWARD 100 CIRCLE 5 ] ; som ovenfor med en relativ sti
PICTURE “/home/user/eksempel.svg” [ CIRCLE 5 ] ; absolut sti for Unix/Linux
PICTURE “C:\eksempel.svg” [ CIRCLE 5 ] ; absolut sti på Windows
Gemmer SVG/SMIL animations (tegninger med SLEEP-kommandoer)
PICTURE “animation.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 ] ; gem en SVG/SMIL animation (se også SLEEP)
PICTURE “animation2.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 SLEEP 2000 ] ; som ovenfor, menved brug af SLEEP efter sidste objekt vil resultatet køre i ring: efter 2 sekunder starter animationen forfra, hvis den vises i en browser, som understøtter SMIL.
Sammenhæng i forhold til venstre kant
Brug PICTURE til af holde sammenhængen mellem positioner og stregfigurer i forhold til Writers venstre kant:
PICTURE [ CIRCLE 20 POSITION [-100, 100] CIRCLE 20 ]
Løkker
REPEAT Gentag
; REPEAT antal [ kommandoer ]
REPEAT 10 [ FORWARD 10 LEFT 45 CIRCLE 10 ] ; gentag 10 gange
; antal er valgfrit
REPEAT [ POSITION ANY ] ; endeløs løkke
REPCOUNT Gentagelsestæller
Løkkevariabel (også i FOR og WHILE løkker).
REPEAT 100 [ FORWARD REPCOUNT LEFT 90 ]
FOR IN
Løkke for listeelementerne:
FOR i IN [1, 5, 7, 9, 11] [
FORWARD i
LEFT 90
]
Løkke til tegn i en tegnsekvens:
FOR i IN “text” [
LABEL i
FORWARD 10
]
WHILE Mens
WHILE TRUE [ POSITION ANY ] ; endeløs løkke
WHILE REPCOUNT <= 10 [ FORWARD 50 LEFT 36 ] ; as REPEAT 10 [ ... ]
BREAK Afbryd
Stop løkken.
REPEAT [ ; endeløs løkke
POSITION ANY
IF REPCOUNT = 100 [ BREAK ] ; svarende til REPEAT 100 [ ... ]
]
CONTINUE Fortsæt
Hop til næste gennemløb af løkken.
REPEAT 100 [
POSITION ANY
IF REPCOUNT % 2 = 0 [ CONTINUE ]
CIRCLE 10 ; tegner cirkler på hver anden position
]
Betingelser
IF hvis
; IF betingelse [ sand blok ]
; IF betingelse [ sand blok ] [ falsk blok ]
IF a < 10 [ PRINT “Lille” ]
IF a < 10 [ PRINT “Lille” ] [ PRINT “Stor” ]
AND, OR, NOT og, eller, ikke
Logiske operatorer.
IF a < 10 AND NOT a = 5 [ PRINT “0, 1, 2, 3, 4, 6, 7, 8 or 9” ]
IF a < 10 AND a != 5 [ PRINT “0, 1, 2, 3, 4, 6, 7, 8 or 9” ] ; som ovenfor
Subrutiner
TO, END til, slut
Nyt ord (eller procedure).
TO trekant
REPEAT 2 [ FORWARD 100 RIGHT 120 ] FILL
END
REPEAT 10 [ trekant PENUP POSITION ANY PENDOWN ]
OUTPUT uddata
Returværdi fra funktion.
TO randomletter
OUTPUT RANDOM “qwertzuiopasdfghjklyxcvbnm”
END
PRINT randomletter + randomletter + randomletter ; udskriv tilfældig tegnsekvens på 3 bogstaver
STOP
Retur fra proceduren.
TO example number
IF number < 0 [ STOP ]
PRINT SQRT number ; udskriv kvadratrod
]
example 100
example -1 ; uden uddata og fejl
example 25
Standardvariabler
ANY tilfældig
Standard tilfældig farveværdi osv.
PENCOLOR ANY ; tilfældig pennefarve
TRUE Sand
Logisk værdi.
WHILE TRUE [ POSITION ANY ] ; endeløs løkke
PRINT TRUE ; udskriv sand
FALSE Falsk
Logisk værdi.
WHILE NOT FALSE [ POSITION ANY ] ; endeløs løkke
PRINT FALSE ; udskriv falsk
PAGESIZE sidestørrelse
PRINT PAGESIZE ; udskriv liste med sidens størrelse i punkter, fx. [595.30, 841.89]
PI/π
PRINT PI ; udskriv 3.14159265359
Input/Output
PRINT udskriv
PRINT “tekst” ; udskriv “tekst” i en dialogboks
PRINT 5 + 10 ; udskriv 15
INPUT inddata
PRINT INPUT “Inddata værdi?” ; spørg og udskriv en streng ved hjælp af en forespørgselsboks
PRINT FLOAT (INPUT “Første tal?”) + FLOAT (INPUT “Andet tal?”) ; simpel lommeregner
SLEEP vent
SLEEP 1000 ; vent i 1000 ms (1 sek)
GLOBAL global variabel
Sæt globale variabler til brug i procedurer.
GLOBAL about
about = “LibreLogo”
TO example
PRINT about
GLOBAL about ; når vi vil tilføje en ny værdi
about = “den globale variabels nye værdi”
END
example
PRINT about
Funktioner
RANDOM tilfældig
PRINT RANDOM 100 ; tilfældigt kommatal (0 <= x < 100)
PRINT RANDOM “teksten” ; tilfældigt tegn fra “teksten”
PRINT RANDOM [1, 2] ; tilfældigt element fra listen (1 eller 2)
INT heltal
PRINT INT 3.8 ; udskriv 3 (heltalsdelen af 3.8)
PRINT INT RANDOM 100 ; tilfældigt heltal (0 <= x < 100)
PRINT INT “7” ; omdan strengparameteren til heltal
FLOAT
; konverter strengparameteren til kommatal
PRINT 2 * FLOAT “5.5” ; skriv 11.0
STR streng
; omdan talparameter til en streng
PRINT “Resultat: ” + STR 5 ; udskriv “Resultat: 5”
PRINT 10 * STR 5 ; udskriv 5555555555
SQRT kvadratrod
PRINT SQRT 100 ; udskriv 10, kvadratroden af 100
SIN sinus
PRINT SIN 90 * PI/180 ; udskriv 1.0 (sinus af 90° in radianer)
COS Cos
PRINT COS 0 * PI/180 ; skriv 1.0 (sinus af 0° i radianer)
LOG10
PRINT LOG10 100 ; Skriv 2.0 (titalslogaritmen af 100)
ROUND Afrund
PRINT ROUND 3.8 ; skriv 4 (afrund 3.8)
PRINT ROUND RANDOM 100 ; tilfældigt heltal (0 <= x <= 100)
ABS Abs
PRINT ABS -10 ; skriv 10, den absolute værdi af -10
COUNT Tæl
PRINT COUNT “tekst” ; skriv 5, tegntælling af “tekst”
PRINT COUNT [1, 2, 3] ; skriv 3, listens størrelse
SET Sæt
; Konverter listen til et Python sæt
PRINT SET [4, 5, 6, 6] ; skriv {4, 5, 6}
PRINT SET [4, 5, 6, 6] | SET [4, 1, 9] ; skriv {1, 4, 5, 6, 9}, foreningsmængden
PRINT SET [4, 5, 6, 6] & SET [4, 1, 9] ; skriv {4}, fællesmængden
PRINT SET ([4, 5, 6, 6]) - SET [4, 1, 9] ; skriv {5, 6}, forskellen
PRINT SET [4, 5, 6, 6] ^ SET [4, 1, 9] ; skriv {1, 5, 6, 9}, symmetrisk forskel
RANGE Interval
; Python-lignende liste generation
PRINT RANGE 10 ; skriv [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 ; skriv [3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 3 ; skriv [3, 6, 9]
FOR i IN RANGE 10 50 10 [ ; løkke for [10, 20, 30, 40]
FORWARD i
LEFT 90
]
LIST Liste
; fjern gentagne elementer i en list med set and listekonvertering
PRINT LIST (SET [1, 3, 5, 5, 2, 1]) ; skriv [1, 3, 5, 2]
TUPLE
Konverter til Python tuple (fast liste)
PRINT TUPLE [4, 5]
SORTED Sorteret
Den returnerer en sorteret liste.
PRINT SORTED [5, 1, 3, 4] ; skriv [1, 3, 4, 5]
SUB Sub
Udskift tegnsekvenser med regex- (regulært udtryk) mønstre.
PRINT SUB (“t”, “T”, “tekst”) ; print “Tekst”, ved at udskifte “t” med “T”
PRINT SUB (“(.)”, “\\1\\1”, “tekst”) ; print “tteekksstt”, ved at fordoble alle tegn
SEARCH Søg
Søg tegnsekvensmønstre med regex-mønstre.
IF SEARCH (“\w”, "word") [ PRINT “Bogstav i ordet.” ]
FINDALL Find alle
Find alle tegnsekvenser i inputstrengen, der matcher det givne regex-mønster.
PRINT FINDALL(“\w+”, “Hunde, katte.”) ; skriv [“Hunde”, “katte”], listen af ord.
MIN Min
PRINT MIN [1, 2, 3] ; skriv 1, listens mindste element
MAX Maks
PRINT MAX [1, 2, 3] ; skriv 3, det største element i listen
Farvekonstanter
PENCOLOR “SILVER” ; vælg med navn
PENCOLOR [1] ; vælg med identifikatorer
PENCOLOR “~SILVER” ; tilfældig sølvfarve
Identifikator |
Navn |
0 |
BLACK Sort |
1 |
SILVER Sølv(farvet) |
2 |
GRAY/GREY Grå |
3 |
WHITE Hvid |
4 |
MAROON Rødbrun |
5 |
RED Rød |
6 |
PURPLE Lilla |
7 |
FUCHSIA/MAGENTA Fuchsia-/magentarød |
8 |
GREEN Grøn |
9 |
LIME Limegrøn |
10 |
OLIVE Olivengrøn |
11 |
YELLOW Gul |
12 |
NAVY marineblå |
13 |
BLUE Blå |
14 |
TEAL Blågrøn |
15 |
AQUA turkis |
16 |
PINK Pink |
17 |
TOMATO tomatrød |
18 |
ORANGE Orange |
19 |
GOLD Guld |
20 |
VIOLET Violet |
21 |
SKYBLUE Himmelblå |
22 |
CHOCOLATE Chokoladebrun |
23 |
BROWN Brun |
24 |
INVISIBLE Usynlig |