LibreLogo
LibreLogo Àr en enkel Logo-liknande programmeringsmiljö med sköldpaddegrafik som skapats för att utbilda informationskunskap (programmering och ordbehandling), DTP och grafikdesign. Se http://www.numbertext.org/logo/librelogo.pdf.
Verktygsraden LibreLogo
The LibreLogo toolbar (
) contains turtle moving, program start, stop, home, clear screen, program editor/syntax highlighting/translating icons and an input bar (command line).Ikoner för sköldpaddsförflyttningar
De motsvarar Logo-kommandona "FORWARD 10", "BACK 10", "LEFT 15", "RIGHT 15". Genom att klicka pÄ en av ikonerna sÄ kommer markören att fokusera pÄ sköldpaddan och sidan kommer rullas till dess position.
Starta Logo-program
Klicka pÄ ikonen "Starta Logoprogram" för att köra texten i dokumentet (eller i markeringen) som ett LibreLogoprogram. I ett tomt dokument infogas ett exempelprogram och körs.
Klicka pĂ„ âStoppâ-ikonen för att stoppa programmet.
Home
Klicka pÄ "Hem"-ikonen för att ÄterstÀlla sköldpaddans position och instÀllningar.
Rensa skÀrmen.
Klicka pĂ„ ikonen âRensa skĂ€rmâ för att ta bort teckningsobjekt frĂ„n dokumentet.
Program redigerare/Syntax mĂ€rkning/ĂversĂ€ttning
The âmagic wandâ icon sets 2-page layout for program editing, expands and converts to uppercase the abbreviated, lowercase Logo commands in the Writer document. Change the language of the document (
) and click on this icon to translate the Logo program to the selected language.Kommandorad
Tyck Enter i kommandoraden för att köra dess innehÄll. För att stoppa programmet anvÀnder du ikonen "Stop".
HÄll nere Enter för att upprepa kommandot, till exempel pÄ följande kommandosekvens:
FORWARD 200 LEFT 89
För att ÄterstÀlla kommandoraden trippelklicka pÄ den eller tryck Ctrl-A för att markera föregÄende kommandon och skriv sedan in de nya kommandona.
AnvÀndargrÀnssnitt för grundlÀggande sköldpaddeinstÀllningar
LibreLogos sköldpaddeform Àr ett vanligt teckningsobjekt av fast storlek. Du kan placera och rotera den som vanligt, med hjÀlp av musen och roteraikonerna pÄ verktygsraden Bild. AnvÀnd instÀllningarna för att Àndra linjebredd, linjefÀrg och fÀrgyta för att ange LibreLogos attribut PENSIZE, PENCOLOR och FILLCOLOR.
Programredigering
LibreLogo-teckningar och program anvÀnder samma dokument. Ritytan för LibreLogo Àr pÄ första sidan i Writer-dokumentet. Du kan infoga en sidbrytning före LibreLogo-programmet och ange sidans zoomningsgrad med hjÀlp av "trollstavs"-ikonen i verktygsraden Logo. Förslagsvis kan du Àven förstora teckenstorleken sÄ att texten blir mer lÀttlÀst i den tvÄsidiga layouten. Med detta tillvÀgagÄngssÀtt fÄr du ritytan pÄ sida ett och programredigeraren pÄ sidan tvÄ.
ProgrammeringssprÄket LibreLogo
LibreLogo Àr ett Logo-liknande programmeringssprÄk som lÀtt kan översÀttas. Det har redan översatts till flera sprÄk av LibreOffice lokala gemenskaper. Det Àr bakÄtkompatibelt med Àldre Logo-system om det handlar om enkla Logoprogram som t.ex. anvÀnds inom utbildningar.
TO triangle :size
REPEAT 3 [
FORWARD :size
LEFT 120
]
END
triangle 10 triangle 100 triangle 200
Skillnader frÄn Logo programmeringssprÄk
-
ListinnehÄll Àr kommaseparerat: POSITION [0, 0]
-
Programblock och listor Àr annorlunda
-
-
Programblock behöver blanksteg eller ny rad vid parenteser: REPEAT 10 [ FORWARD 10 LEFT 36 ]
-
Listor krÀver angrÀnsande parenteser (utan blanksteg): POSITION [0, 0], och inte POSITION [ 0, 0 ]
-
-
1-rads funktionsdeklarationer stöds ej (TO och END behöver radbrytningar).
Andra funktioner i LibreLogo
-
Kolon Àr valfritt före variabelnamn.
TO triangle size
REPEAT 3 [ FORWARD size LEFT 120 ]
END -
StrÀngnotation stöder ocksÄ ortografi och python-syntax.
PRINT "ord ; original Logo-syntax
PRINT âGodtyklig text.â ; ortografi, Writer
PRINT 'Godtycklig text.' ; Python-syntax -
Python list- och strÀnghantering
PRINT âtextâ[2] ; skriver ut âxâ
PRINT âtextâ[1:3] ; skriver ut âexâ -
Python-liknande FOR-loop
-
Python-liknande variabeldeklaration:
x = 15
PRINT x -
Det finns inga extra sökfunktioner:
PRINT FILLCOLOR
p = POSITION
PRINT p
REPEAT 10 [ POSITION ANY POSITION p ] -
Alternativ anvÀndning av parenteser i funktionsanrop
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-kommandon
GrundlÀggande syntax
SkiftlÀgeskÀnslighet
Kommando och fÀrgkonstanter Àr inte skiftlÀgeskÀnsliga:
PRINT âHello, World!â
print âHello, World, igen!â
Variabelnamn Àr skiftlÀgeskÀnsliga:
a = 5
A = 7
PRINT a
PRINT A
Programrader
Rader av ett LibreLogo-program Àr stycken i LibreOffice Writerdokument. En programrad kan innehÄlla flera kommandon:
PRINT âHello, World!â PRINT âLibreLogoâ
Kommentarer
Rader eller delar av rader kan göras till kommentarer genom att lÀgga till ett semikolon, allt som följer semikolon (i samma stycke) rÀknas som en kommentar.
; en kommentar
PRINT 5 * 5 ; ytterligare en kommentar
Dela upp programrader i flera stycken
Det Àr möjligt att dela upp en programrad i flera stycken med hjÀlp av tecknet ~ (tilde) vid radens slut:
PRINT âDetta Ă€r ett vĂ€ldigt lĂ„ngt â + ~
âvarningsmeddelandeâ
Sköldpaddsförflyttningar
FORWARD (fd)
FORWARD 10 ; flyttar framÄt 10pt (1pt = 1/72 inch = 0,35 mm)
FORWARD 10pt ; se ovan
FORWARD 0.5in ; flytta framÄt 0.5 inch (1 inch = 2,54 cm)
FORWARD 1" ; se ovan
FD 1mm
FD 1cm
BACK (bk)
BACK 10 ; flytta bakÄt 10pt
LEFT (lt)
LEFT 90 ; svÀng 90 grader motsols
LEFT 90° ; se ovan
LT 3h ; svÀng 3 timmar mot klockans riktning, dvs 90 grader motsols
LT any ; svÀng Ät ett slumpmÀssigt hÄll
RIGHT (rt)
RIGHT 90 ; svÀng 90 grader medsols
PENUP (pu)
PENUP ; flytta sköldpaddan utan att rita nÄgot
PENDOWN (pd)
PENDOWN ; rita medan du flyttar sköldpaddan
POSITION (pos)
POSITION [0, 0] ; svÀng och flytta till översta, vÀnstra hörnet
POSITION PAGESIZE ; svÀng och flytta till nedersta högra hörnet
POSITION [PAGESIZE[0], 0] ; svÀng och flytta till översta, högra hörnet
POSITION ANY ; svÀng och flytta till en slumpmÀssig position
HEADING (seth)
HEADING 0 ; svÀng norrut
HEADING 12h ; se ovan
HEADING [0, 0] ; svÀng mot vÀnstra övre hörnet
HEADING ANY ; svÀng i en slumpmÀssig riktning
Andra skölpaddekommandon
HIDETURTLE (ht)
HIDETURTLE ; döljer sköldpaddan (tills kommandot showturtle anvÀnds)
SHOWTURTLE (st)
SHOWTURTLE ; visa sköldpadda
HOME
HOME ; reset initial turtle position
CLEARSCREEN (cs)
CLEARSCREEN ; tar bort ritade objekt frÄn dokumentet
FILL och CLOSE
FILL ; close and fill the actual line shape or points
CLOSE ; close the actual line shape or join the actual points
Example: filling a regular triangle:
FORWARD 50 LEFT 120 FORWARD 50 FILL
Example: drawing a regular triangle:
FORWARD 50 LEFT 120 FORWARD 50 CLOSE
PenninstÀllningar
PENSIZE (ps)
PENSIZE 100 ; ange linjebredden till 100 punkter
PENSIZE ANY ; motsvarar PENSIZE RANDOM 10
PENCOLOR/PENCOLOUR (pc)
PENCOLOR âredâ ; ange pennfĂ€rgen till röd (via fĂ€rgnamn, se fĂ€rgkonstanter)
PENCOLOR [255, 255, 0] ; anger en gul fÀrg (RGB lista)
PENCOLOR 0xffff00 ; anger gul fÀrg (hexadecimal kod)
PENCOLOR 0 ; anger svart fÀrg (0x000000)
PENCOLOR ANY ; slumpmÀssig fÀrg
PENCOLOR [5] ; anger röd fÀrg (via fÀrgidentifierare, se fÀrgkonstanter)
PENCOLOR âinvisibleâ ; genomskinlig "fĂ€rg" för former utan synligt omrĂ„de
PENCOLOR â~redâ ; ange en slumpmĂ€ssig röd fĂ€rg
PENTRANSPARENCY
PENTRANSPARENCY 80 ; ange transparensen för pennans fÀrg till 80%
PENCAP/LINECAP
PENCAP ânoneâ ; utan extra linjeslut (standard)
PENCAP âroundâ ; avrundat linjeslut
PENCAP âsquareâ ; fyrkantigt linjeslut
PENJOINT/LINEJOINT
PENJOINT âroundedâ ; avrundade linjeskarvar (standard)
PENJOINT âmiterâ ; skarpa linjeskarvar
PENJOINT âbevelâ ; kapade linjeskarvar
PENJOINT ânoneâ ; ingen linjeskarv
PENSTYLE
PENSTYLE âsolidâ ; solid linje (default)
PENSTYLE âdottedâ ; prickad linje
PENSTYLE âdashedâ ; streckad linje
; anpassat mönster av prickar och streck angivet av en lista med följande argument:
; â antal intilliggande punkter
; â prickarnas lĂ€ngd
; â antal intilliggande streck
; â streckens lĂ€ngd
; â avstĂ„nd mellan strickar/streck
; â typ (valfri):
; 0 = prickar Àr rektangulÀra (default)
; 2 = prickar Àr kvadratiska (avstÄnd och lÀngd anges i förhÄllande till pennstorleken)
PENSTYLE [3, 1mm, 2, 4mm, 2mm, 2] ; ...ââ...ââ...ââ
FyllningsinstÀllningar
FILLCOLOR/FILLCOLOUR (fc)
FILLCOLOR âblueâ ; fill with blue color, see also PENCOLOR
FILLCOLOR âinvisibleâ CIRCLE 10 ; unfilled circle
FILLCOLOR [âblueâ, âredâ] ; gradient between red and blue
FILLCOLOR [[255, 255, 255], [255, 128, 0]] ; between white and orange
FILLCOLOR [âblueâ, âredâ, 1, 0, 0] ; set axial gradient (with the required rotation and border settings), possible values: 0-5 = linear, axial, radial, elliptical, square and rectangle gradients
FILLCOLOR [âredâ, âblueâ, 0, 90, 20] ; linear with 20% border, rotated with 90 degrees from the actual heading of the turtle
FILLCOLOR [âredâ, âblueâ, 0, 90, 20, 0, 0, 200, 50] ; from 200% to 50% intensity
FILLCOLOR [ANY, ANY, 2, 0, 0, 50, 50] ; radial gradient with random colors and 50-50% horizontal and vertical positions of the center
FILLTRANSPARENCY
FILLTRANSPARENCY 80 ; anger att aktuella fyllnadsfÀrgen ska vara 80% transparent (genomskinlig)
FILLTRANSPARENCY [80] ; anger linjÀr transparent toning frÄn 80% till 0%
FILLTRANSPARENCY [80, 20] ; anger linjÀr transparent toning frÄn 80% till 20%
FILLTRANSPARENCY [80, 20, 1, 90] ; anger axiell transparent toning roterat med 90 grader frÄn sköldpaddans aktuella position
FILLTRANSPARENCY [80, 20, 2, 0, 20, 50, 50] ; anger radiell transparent toning frÄn yttre 80% till inre 20% transparens med 20% inramning och 50-50% horisontell och vertikal position frÄn mitten
FILLSTYLE
FILLSTYLE 0 ; fyll utan skraffering (default)
FILLSTYLE 1 ; enkel svart skraffering (horisontell)
FILLSTYLE 2 ; enkel svart skraffering (45 grader)
FILLSTYLE 3 ; enkel svart skraffering (-45 grader)
FILLSTYLE 4 ; enkel svart skraffering (vertikal)
FILLSTYLE 5 ; röd skraffering i kors (45 degrees)
FILLSTYLE 6 ; röd skraffering i kors (0 grader)
FILLSTYLE 7 ; blÄ skraffering i kors (45 degrees)
FILLSTYLE 8 ; blÄ skraffering i kors (0 grader)
FILLSTYLE 9 ; blÄ skraffering trippelkryssad
FILLSTYLE 10 ; enkel svart skraffering (bred) (45 grader)
; anpassad skraffering anger en lista med följande argument:
; â style (1 = enkel, 2 = dubbel, 3 = trippel skraffering)
; â fĂ€rg
; â avstĂ„nd
; â grader
FILLSTYLE [2, âgreenâ, 3pt, 15°] ; grön korsad skraffering (15 grader)
Ritobjekt
CIRCLE
CIRCLE 100 ; rita en cirkel (diameter = 100pt)
ELLIPSE
ELLIPSE [50, 100] ; rita en ellips med 50pt samt 100pt i diameter
ELLIPSE [50, 100, 2h, 12h] ; rita en elliptisk sektor (frÄn positionen kl 2 till kl 12)
ELLIPSE [50, 100, 2h, 12h, 2] ; rita ett elliptiskt segment
ELLIPSE [50, 100, 2h, 12h, 3] ; rita en elliptisk bÄge
SQUARE
SQUARE 100 ; rita en kvadrat (storlek = 100pt)
RECTANGLE
RECTANGLE [50, 100] ; draw a rectangle shape (50Ă100pt)
RECTANGLE [50, 100, 10] ; draw a rectangle with rounded corners
POINT
POINT ; rita en punkt med pennans storlek och fÀrg
CLOSE can join the last points, FILL can fill the shape defined by points. For example, itâs easy to draw a âflatâ star starting from its center:
PENUP
REPEAT 5 [
FORWARD 80
POINT
BACK 80
RIGHT 36
FORWARD 50
POINT
BACK 50
RIGHT 120
] FILL
LABEL
LABEL âtextâ ; skriver ut text vid sköldpaddans position
LABEL 'text' ; se ovan
LABEL "text ; se ovan (endast för enstaka ord)
TEXT
CIRCLE 10 TEXT âtextâ ; ange texten för det aktuella objektet
TeckensnittsinstÀllningar
FONTCOLOR/FONTCOLOUR
FONTCOLOR âgreenâ ; anger teckensnittsfĂ€rgen till grön
FONTFAMILY
FONTFAMILY âLinux Libertine Gâ ; anger teckensnitt (-sfamilj)
FONTFAMILY âLinux Libertine G:smcp=1â ; anger Ă€ven teckensnittseffekt (smĂ„ bokstĂ€ver)
FONTFAMILY âLinux Libertine G:smcp=1&onum=1â ; smĂ„ bokstĂ€ver + gammeldags stil
FONTSIZE
FONTSIZE 12 ; anger 12pt
FONTWEIGHT
FONTWEIGHT âboldâ ; anger fet stil
FONTWEIGHT ânormalâ ; anger normal teckentjocklek
FONTSTYLE
FONTSTYLE âitalicâ ; anger kursiv stil
FONTSTYLE ânormalâ ; Ă„terstĂ€ller kursiv stil till normal
PICTURE (pic)
PICTURE Àr till
-
gruppering av figurer;
-
starting new line shapes;
-
sparar svg-bilder och svg-/smil-animationer;
-
behÄll konsekvens mellan linjefigurers position och den vÀnstra kanten.
Gruppering av figurer
; PICTURE [ LibreLogo_kommandon]
PICTURE [ FORWARD 100 CIRCLE 100 ] ; trÀdliknande grupperad figur
Se Àven "Grupp" i hjÀlpen för LibreOffice Writer.
TO tree location
PENUP POSITION location HEADING 0 PENDOWN
PICTURE [ FORWARD 100 CIRCLE 100 ] ; tree-like grouped shape
END
PICTURE [ tree [230, 400] tree [300, 400] ] ; grouped shapes in a grouped shape
Att pÄbörja nya streckfigurer
PICTURE ; pÄbörja en ny streckfigur
FORWARD 10 PICTURE FORWARD 10 ; tvÄ streckfigurer
Sparar svg-bilder
PICTURE âexample.svgâ [ CIRCLE 5 ] ; spara bilden som en SVG-bildfil i anvĂ€ndarmappen
PICTURE âDesktop/example.svgâ [ FORWARD 100 CIRCLE 5 ] ; som ovan, med en relativ sökvĂ€g
PICTURE â/home/user/example.svgâ [ CIRCLE 5 ]; absolut sökvĂ€g för Unix/Linux
PICTURE âC:\example.svgâ [ CIRCLE 5 ] ; absolut sökvĂ€g för Windows
Sparar svg-/smil-animationer (teckningar med SLEEP-kommandon)
PICTURE âanimation.svgâ [ CIRCLE 5 SLEEP 1000 CIRCLE 99 ] ; spara som en svg-/smil-animation (se Ă€ven SLEEP)
PICTURE âanimation2.svgâ [ CIRCLE 5 SLEEP 1000 CIRCLE 99 SLEEP 2000 ] ; som ovan, men med SLEEP efter sista objektet vilket resulterar i en loop: efter 2 sekunder sĂ„ startas svg-animationen om i webblĂ€sare som stöder smil.
Konsekvent vid vÀnster kant
Use PICTURE to keep the consistency of positions and line shapes at the left border of Writer:
PICTURE [ CIRCLE 20 POSITION [-100, 100] CIRCLE 20 ]
Iterativa satser
REPEAT
; REPEAT antal [ kommandon]
REPEAT 10 [ FORWARD 10 LEFT 45 CIRCLE 10 ] ; upprepa 10 gÄnger
; antal Àr valfritt
REPEAT [ POSITION ANY ] ; oÀndlig loop
REPCOUNT
Loopvariabel (Ă€ven i FOR- och WHILE-loopar).
REPEAT 100 [ FORWARD REPCOUNT LEFT 90 ]
FOR IN
Loop för listposterna:
FOR i IN [1, 5, 7, 9, 11] [
FORWARD i
LEFT 90
]
En slinga (loop) för alla tecken i en teckensekvens:
FOR i IN âtextâ [
LABEL i
FORWARD 10
]
WHILE
WHILE TRUE [ POSITION ANY ] ; oÀndlig loop
WHILE REPCOUNT <= 10 [ FORWARD 50 LEFT 36 ] ; as REPEAT 10 [ ... ]
BREAK
Avbryt loopen.
REPEAT [ ; oÀndlig loop
POSITION ANY
IF REPCOUNT = 100 [ BREAK ] ; motsvarigheten för REPEAT 100 [ ... ]
]
CONTINUE
Hoppa till nÀsta steg i loopen.
REPEAT 100 [
POSITION ANY
IF REPCOUNT % 2 = 0 [ CONTINUE ]
CIRCLE 10 ; rita cirklar pÄ varannan position
]
Villkor
OM
; IF villkor [ sant block ]
; IF villkor[ sant block ] [ falskt block ]
IF a < 10 [ PRINT âSmallâ ]
IF a < 10 [ PRINT âSmallâ ] [ PRINT âBigâ ]
AND, OR, NOT
Logiska 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 ovan
Subrutiner
TO, END
Nytt ord (eller procedur).
TO triangle
REPEAT 2 [ FORWARD 100 RIGHT 120 ] FILL
END
REPEAT 10 [ triangle PENUP POSITION ANY PENDOWN ]
OUTPUT
ReturvÀrde frÄn funktionen.
TO randomletter
OUTPUT RANDOM âqwertzuiopasdfghjklyxcvbnmâ
END
PRINT randomletter + randomletter + randomletter ; skriver ut 3 slumpmÀssigt valda tecken
STOP
Avslutar process.
TO example number
IF number < 0 [ STOP ]
PRINT SQRT number ; skriver ut kvadratroten
]
example 100
example -1 ; utan utdata och fel
example 25
Standardvariabler
ANY
Standard slumpmÀssiga fÀrgvÀrden etc.
PENCOLOR ANY ; slumpmÀssig pennfÀrg
TRUE
Logiskt vÀrde.
WHILE TRUE [ POSITION ANY ] ; Àndlös loop
PRINT TRUE ; skriver ut true
FALSE
Logiskt vÀrde.
WHILE NOT FALSE [ POSITION ANY ] ; Àndlös loop
PRINT FALSE ; skriver ut false
PAGESIZE
PRINT PAGESIZE ; skriver ut pappersstorlekar i punkter, t.ex. [595.30, 841.89]
PI/Ï
PRINT PI ; skriver ut 3.14159265359
Input/Output
PRINT âtextâ ; skriver ut âtextâ i en dialogruta
PRINT 5 + 10 ; skriver ut 15
INPUT
PRINT INPUT âInmatningsvĂ€rde?â ; frĂ„gar efter och skriver ut en strĂ€ng via en frĂ„gedialog
PRINT FLOAT (INPUT âFörsta numret?â) + FLOAT (INPUT âAndra numret?â) ; enkel kalkylator som adderar tvĂ„ vĂ€rden
SLEEP
SLEEP 1000 ; vÀnta i 1000 ms (1 sekund)
GLOBAL
Anger globala variabler som anvÀnds i procedurer.
GLOBAL about
about = âLibreLogoâ
TO example
PRINT about
GLOBAL about ; nÀr vi vill lÀgga till ett nytt vÀrde
about = ânytt vĂ€rde för den globala variabelnâ
END
example
PRINT about
Funktioner
RANDOM
PRINT RANDOM 100 ; slumpmÀssigt flyttal (0 <= x < 100)
PRINT RANDOM âtextâ ; slumpmĂ€ssigt tecken frĂ„n "text"
PRINT RANDOM [1, 2] ; slumpmÀssig post frÄn listan (1 eller 2)
INT
PRINT INT 3.8 ; skriver ut 3 (heltalsdelen (integer-delen) av 3.8)
PRINT INT RANDOM 100 ; slumpmÀssigt heltal (0 <= x < 100)
PRINT INT â7â ; konverterar en strĂ€ngparameter till ett heltal (en integer)
FLOAT
; konverterar strÀngparametern till ett flyttal
PRINT 2 * FLOAT "5.5" ; skriver ut 11.0
STR
; konverterar den numeriska parametern till en strÀng
PRINT âResultat: â + STR 5 ; skriver ut âResultat: 5â
PRINT 10 * STR 5 ; skriver ut 5555555555
SQRT
PRINT SQRT 100 ; skriver ut 10, kvadratroten av 100
SIN
PRINT SIN 90 * PI/180 ; skriver ut 1.0 (sinus av 90° i radianer)
COS
PRINT COS 0 * PI/180 ; skriver ut 1.0 (cosinus av 0° i radianer)
LOG10
PRINT LOG10 100 ; skriv ut 2.0 (logaritmen av 100)
ROUND
PRINT ROUND 3.8 ; skriver ut 4 (avrundar 3.8)
PRINT ROUND RANDOM 100 ; slumpmÀssigt heltal (0 <= x <= 100)
ABS
PRINT ABS -10 ; skriver ut 10, det absoluta vÀrdet av -10
COUNT
PRINT COUNT âtextâ ; skriver ut 4, det antal tecken som strĂ€ngen âtextâ innehĂ„ller
PRINT COUNT [1, 2, 3] ; skriver ut 3, listans storlek
SET
; konverterar listan till ett Python-set
PRINT SET [4, 5, 6, 6] ; skriver ut {4, 5, 6}
PRINT SET [4, 5, 6, 6] | SET [4, 1, 9] ; skriver ut {1, 4, 5, 6, 9}, union
PRINT SET [4, 5, 6, 6] & SET [4, 1, 9] ; skriver ut {4}, skÀrningspunkten
PRINT SET ([4, 5, 6, 6]) - SET [4, 1, 9] ; skriver ut {5, 6}, differensen
PRINT SET [4, 5, 6, 6] ^ SET [4, 1, 9] ; skriver ut {1, 5, 6, 9}, symmetriska differensen
RANGE
; Python-liknande listgenerering
PRINT RANGE 10 ; print [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 ; skriver ut [3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 3 ; skriver ut [3, 6, 9]
FOR i IN RANGE 10 50 10 [ ; loop för [10, 20, 30, 40]
FORWARD i
LEFT 90
]
LIST
; tar bort upprepade poster frÄn en lista med set och listkonvertering
PRINT LIST (SET [1, 3, 5, 5, 2, 1]) ; skriver ut [1, 3, 5, 2]
TUPLE
Konverterar till en Python tuple (lista som inte gÄr att Àndra)
PRINT TUPLE [4, 5]
SORTED
Returnerar en sorterad lista.
PRINT SORTED [5, 1, 3, 4]; skriver ut [1, 3, 4, 5]
SUB
ErsÀtter teckensekvenser med hjÀlp av regex-mönster (reguljÀra uttryck).
PRINT SUB("t", "T", "text"); skriver ut "Text", ersÀtter "t" med "T"
PRINT SUB("(.)", "\\1\\1", "text"; skriver ut "tteexxtt", dubblerar alla tecken
SĂK
Söker efter teckensekvenser med hjÀlp av reguljÀra uttryck.
IF SEARCH (â\wâ, "word") [ PRINT âLetter in the word.â ]
FINDALL
Hittar alla teckensekvenser i en strÀng som matchar ett givet reguljÀrt uttryck.
PRINT FINDALL("\w+","Hundar, katter."); skriver ut "Hundar", "katter"], listan med ord.
MIN
PRINT MIN [1, 2, 3]; skriver ut 1, listans minsta element
MAX
PRINT MAX [1, 2, 3]; skriver ut 3, det största elementet i listan
FĂ€rgkonstanter
PENCOLOR "SILVER"; vÀlj fÀrg via namn
PENCOLOR[1], vÀljer fÀrg via identifierare
PENCOLOR "~SILVER"; slumpmÀssig silverfÀrg
ID |
Namn |
0 |
BLACK |
1 |
SILVER |
2 |
GRAY/GREY |
3 |
WHITE |
4 |
MAROON |
5 |
RED |
6 |
PURPLE |
7 |
FUCHSIA/MAGENTA |
8 |
GREEN |
9 |
LIME |
10 |
OLIVE |
11 |
YELLOW |
12 |
NAVY |
13 |
BLUE |
14 |
TEAL |
15 |
AQUA |
16 |
PINK |
17 |
TOMATO |
18 |
ORANGE |
19 |
GOLD |
20 |
VIOLET |
21 |
SKYBLUE |
22 |
CHOCOLATE |
23 |
BROWN |
24 |
INVISIBLE |