LibreLogo
LibreLogo е проста среда за програмиране с костенуркова векторна графика, подобна на Logo, за преподаване на програмиране и текстообработка, издателска дейност и графичен дизайн. Вижте http://www.numbertext.org/logo/librelogo.pdf.
Лента с инструменти LibreLogo
Лентата с инструменти LibreLogo (
) съдържа икони за движение на костенурката, стартиране и спиране на програмата, инициализиране, изчистване на екрана, открояване и превеждане на синтаксиса, както и поле за въвеждане (команден ред).Икони за придвижване на костенурката
Те са еквивалентни на командите на Logo „FORWARD 10“, „BACK 10“, „LEFT 15“ и RIGHT 15“. Щракването върху някоя от тях освен това фокусира костенурката, превъртайки страницата до нейната позиция.
Стартиране програма на Logo
Щракнете върху иконата „Стартиране програма на Logo“, за да се изпълни целият (или само избраният) текст в документа на Writer като програма на LibreLogo. Ако документът е празен, ще бъде вмъкната и изпълнена примерна програма.
Щракнете върху иконата „Стоп“, за да спрете изпълнението на програмата.
Инициализиране
Щракнете върху иконата „Инициализиране“, за да нулирате позицията и настройките на костенурката.
Изчистване на екрана
Щракнете върху иконата „Изчистване на екрана“, за да премахнете графичните обекти от документа.
Редактиране на програма/открояване на синтаксиса/превеждане
Иконата „вълшебна пръчка“ задава оформление с две страници за редактиране на програма, после разгръща и преобразува в главни букви командите на Logo в документа на Writer. Променете езика на документа (
) и щракнете върху тази икона, за да се преведе програмата на Logo към избрания език.Команден ред
Натиснете Enter в командния ред, за да се изпълни съдържанието му. За да спрете програмата, използвайте иконата „Стоп“.
Задръжте Enter за повтаряне на командния ред, например с последователност от команди като долната:
FORWARD 200 LEFT 89
За да изчистите командния ред, щракнете трикратно в него или натиснете Ctrl+A, за да изберете предишните команди, и въведете новите команди.
Графичен потребителски интерфейс на основните настройки на костенурката
Костенурката на LibreLogo е обикновен графичен обект с фиксиран размер. Можете да я позиционирате и въртите по стандартния начин с мишката и иконата за въртене от лентата Свойства на графичен обект. Променяйте дебелината и цвета на линията и цвета на областта, за да задавате атрибутите PENSIZE, PENCOLOR и FILLCOLOR на LibreLogo.
Редактиране на програма
Рисунките и програмите на LibreLogo споделят един и същ документ на Writer. Платното на LibreLogo е първата страница на документа. Можете да вмъкнете знак за нова страница преди програмите на LibreLogo и да зададете увеличение с иконата „вълшебна пръчка“ от лентата Logo, както и да промените размера на шрифта, за да получите удобно оформление от две страници: лявата (първата) страница е платното, а дясната (втората) е редакторът на програми.
Език за програмиране LibreLogo
LibreLogo е лесен за локализиране програмен език, подобен на Logo, локализиран на няколко езика от езиковите общности на LibreOffice. Той е съвместим с по-старите системи на Logo що се отнася до простите програми, използвани за обучение.
TO triangle :size
REPEAT 3 [
FORWARD :size
LEFT 120
]
END
triangle 10 triangle 100 triangle 200
Разлики с програмния език Logo
-
Елементите на списък се разделят със запетая: POSITION [0, 0]
-
Програмните блокове и списъците се различават
-
-
Програмните блокове изискват интервал или нов ред при скобите: REPEAT 10 [ FORWARD 10 LEFT 36 ]
-
Списъците изискват долепени скоби: POSITION [0, 0] вместо POSITION [ 0, 0 ]
-
-
Не се поддържат едноредови декларации на функции (TO и END изискват нов ред).
Други особености на LibreLogo
-
Двоеточието пред име на променлива не е задължително.
TO triangle size
REPEAT 3 [ FORWARD size LEFT 120 ]
END -
За низовете се допускат също типографски кавички и синтаксисът на Python.
PRINT "дума ; оригинален синтаксис на Logo
PRINT “Произволен текст.” ; типографски кавички, Writer
PRINT 'Произволен текст.' ; синтаксис на Python -
Работа със списъци и низове като в Python
PRINT “текст”[2] ; print “к”
PRINT “текст”[1:3] ; print “ек” -
Цикъл FOR като в Python
-
Обявяване на променливи като в Python:
x = 15
PRINT x -
Няма допълнителни функции за заявки:
PRINT FILLCOLOR
p = POSITION
PRINT p
REPEAT 10 [ POSITION ANY POSITION p ] -
Алтернативен синтаксис за скоби в обръщения към функции
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
Основен синтаксис
Зачитане на регистъра
Командите и имената на цветове са нечувствителни към регистъра:
PRINT “Здравей, свят!”
print “Здравей отново, свят!”
Имената на променливи са чувствителни към регистъра:
a = 5
A = 7
PRINT a
PRINT A
Програмни редове
Редовете от програма на LibreLogo са абзаци в документа на LibreOffice Writer. Един програмен ред може да съдържа няколко команди:
PRINT “Здравей, свят!” PRINT “LibreLogo”
Коментари
Всичко след знак точка и запетая до края на реда (абзаца) се счита за коментар:
; това са коментари
PRINT 5 * 5 ; още коментари
Разделяне програмен ред на няколко абзаца
Възможно е програмен ред да се раздели на няколко абзаца, като в краищата им се поставя знак тилда:
PRINT “Това е много дълго ” + ~
“съобщение за грешка”
Придвижване на костенурката
FORWARD (fd)
FORWARD 10 ; придвижване напред с 10пкт (1пкт = 1/72 инча = 0,35мм)
FORWARD 10pt ; виж по-горе
FORWARD 0.5in ; придвижване напред с 0,5 инча (1 инч = 2,54 см)
FORWARD 1" ; виж по-горе
FD 1mm
FD 1cm
BACK (bk)
BACK 10 ; придвижване назад с 10пкт
LEFT (lt)
LEFT 90 ; завъртане срещу часовниковата стрелка на 90°
LEFT 90° ; виж по-горе
LT 3h ; виж по-горе (посока по часовника)
LT any ; завъртане в случайна посока
RIGHT (rt)
RIGHT 90 ; завъртане по часовниковата стрелка на 90°
PENUP (pu)
PENUP ; костенурката няма да оставя следа
PENDOWN (pd)
PENDOWN ; костенурката ще оставя следа
POSITION (pos)
POSITION [0, 0] ; завъртане и придвижване към горния ляв ъгъл
POSITION PAGESIZE ; завъртане и придвижване към долния десен ъгъл
POSITION [PAGESIZE[0], 0] ; завъртане и придвижване към горния десен ъгъл
POSITION ANY ; завъртане и придвижване към случайна позиция
HEADING (seth)
HEADING 0 ; обръщане на север
HEADING 12h ; същото
HEADING [0, 0] ; завъртане към горния ляв ъгъл
HEADING ANY ; завъртане в случайна посока
Други команди за костенурката
HIDETURTLE (ht)
HIDETURTLE ; скрива костенурката (до команда showturtle)
SHOWTURTLE (st)
SHOWTURTLE ; показва костенурката
HOME
HOME ; връща началната позиция на костенурката
CLEARSCREEN (cs)
CLEARSCREEN ; премахва графичните обекти от документа
FILL и CLOSE
FILL ; затваря и запълва текущата фигура или точки
CLOSE ; затваря текущата фигура или съединява точките
Пример: запълване на равностранен триъгълник:
FORWARD 50 LEFT 120 FORWARD 50 FILL
Пример: чертане на равностранен триъгълник:
FORWARD 50 LEFT 120 FORWARD 50 CLOSE
Настройки на писеца
PENSIZE (ps)
PENSIZE 100 ; дебелина на линията 100 пункта
PENSIZE ANY ; същото като PENSIZE RANDOM 10
PENCOLOR/PENCOLOUR (pc)
PENCOLOR “red” ; червен цвят на писеца (по име, вижте константите за цветовете)
PENCOLOR [255, 255, 0] ; жълт цвят (списък с компоненти RGB)
PENCOLOR 0xffff00 ; жълт цвят (шестнайсетичен код)
PENCOLOR 0 ; черен цвят (0x000000)
PENCOLOR ANY ; случаен цвят
PENCOLOR [5] ; червен цвят (по идентификатор, вижте константите за цветовете)
PENCOLOR “invisible” ; невидим цвят за фигури без видимо очертание
PENCOLOR “~red” ; случаен червен цвят
PENTRANSPARENCY
PENTRANSPARENCY 80 ; задава прозрачност от 80% за цвета на писеца
PENCAP/LINECAP
PENCAP “none” ; без крайчета на линиите (по подразбиране)
PENCAP “round” ; закръглени крайчета
PENCAP “square” ; квадратни крайчета
PENJOINT/LINEJOINT
PENJOINT “rounded” ; закръглени съединения на линиите (по подразбиране)
PENJOINT “miter” ; остри съединения
PENJOINT “bevel” ; скосени съединения
PENJOINT “none” ; без съединения
PENSTYLE
PENSTYLE “solid” ; непрекъсната линия (по подразбиране)
PENSTYLE “dotted” ; пунктирана линия
PENSTYLE “dashed” ; прекъсната линия
; шарка от точки и тирета, зададена със следните аргументи:
; – брой последователни точки
; – дължина на точката
; – брой последователни тирета
; – дължина на тирето
; – разстояние между тиретата/точките
; – тип (незадължителен):
; 0 = точките са правоъгълни (по подразбиране)
; 2 = точките са квадратни (дължините и разстоянията са относителни спрямо размера на писеца)
PENSTYLE [3, 1mm, 2, 4mm, 2mm, 2] ; ...––...––...––
Настройки за запълване
FILLCOLOR/FILLCOLOUR (fc)
FILLCOLOR “blue” ; запълване със син цвят, виж и PENCOLOR
FILLCOLOR “invisible” CIRCLE 10 ; незапълнен кръг
FILLCOLOR [“blue”, “red”] ; преливане между червено и синьо
FILLCOLOR [[255, 255, 255], [255, 128, 0]] ; между бяло и оранжево
FILLCOLOR [“blue”, “red”, 1, 0, 0] ; осев градиент (с настройки за завъртане и прагове), допустими стойности: 0-5 = линеен, осев, радиален, елиптичен, квадратен или правоъгълен градиент
FILLCOLOR [“red”, “blue”, 0, 90, 20] ; линеен с праг от 20%, завъртян на 90° спрямо посоката на костенурката
FILLCOLOR [“red”, 'blue”, 0, 90, 20, 0, 0, 200, 50] ; интензивност от 200% до 50%
FILLCOLOR [ANY, ANY, 2, 0, 0, 50, 50] ; радиален градиент със случайни цветове и позиция на центъра 50% по хоризонтала и вертикала
FILLTRANSPARENCY
FILLTRANSPARENCY 80 ; 80% прозрачност за текущия цвят на запълване
FILLTRANSPARENCY [80] ; линеен градиент на прозрачността от 80% до 0%
FILLTRANSPARENCY [80, 20] ; линеен градиент на прозрачността от 80% до 20%
FILLTRANSPARENCY [80, 20, 1, 90] ; осев градиент на прозрачността под ъгъл 90° спрямо посоката на костенурката
FILLTRANSPARENCY [80, 20, 2, 0, 20, 50, 50] ; радиален градиент на прозрачността от 80% отвън до 20% отвътре с праг от 20% и позиция на центъра 50% по хоризонтала и вертикала
FILLSTYLE
FILLSTYLE 0 ; запълване без щриховка (по подразбиране)
FILLSTYLE 1 ; черни единични щрихи (хоризонтални)
FILLSTYLE 2 ; черни единични щрихи (45 градуса)
FILLSTYLE 3 ; черни единични щрихи (45 градуса)
FILLSTYLE 4 ; черни единични щрихи (вертикални)
FILLSTYLE 5 ; червени пресечени щрихи (45 градуса)
FILLSTYLE 6 ; червени пресечени щрихи (0 градуса)
FILLSTYLE 7 ; сини пресечени щрихи (45 градуса)
FILLSTYLE 8 ; сини пресечени щрихи (0 градуса)
FILLSTYLE 9 ; сини тройно пресечени щрихи
FILLSTYLE 10 ; дебели единични черни щрихи (45 градуса)
; потребителска щриховка, зададена чрез следните аргументи:
; – стил (1 = единична, 2 = двойна, 3 = тройна щриховка)
; – цвят
; – стъпка
; – наклон
FILLSTYLE [2, “green”, 3pt, 15°] ; зелени пресечени щрихи (15 градуса)
Графични обекти
CIRCLE
CIRCLE 100 ; чертае кръг (диаметър = 100пкт)
ELLIPSE
ELLIPSE [50, 100] ; чертае елипса с диаметри 50 и 100
ELLIPSE [50, 100, 2h, 12h] ; чертае елиптичен сектор (от посока по часовника 2 ч. до 12 ч.)
ELLIPSE [50, 100, 2h, 12h, 2] ; чертае елиптичен сегмент
ELLIPSE [50, 100, 2h, 12h, 3] ; чертае дъга от елипса
SQUARE
SQUARE 100 ; чертае квадрат (размер = 100пкт)
RECTANGLE
RECTANGLE [50, 100] ; чертае правоъгълник (50×100пкт)
RECTANGLE [50, 100, 10] ; чертае правоъгълник със заоблени ъгли
POINT
POINT ; чертае точка с размера и цвета на писеца
CLOSE може да съедини последните точки, а FILL – да запълни фигура, зададена чрез точки. Лесно е например да се нарисува „плоска“ звезда, започвайки от центъра й:
PENUP
REPEAT 5 [
FORWARD 80
POINT
BACK 80
RIGHT 36
FORWARD 50
POINT
BACK 50
RIGHT 120
] FILL
LABEL
LABEL “текст” ; отпечатва текст в позицията на костенурката
LABEL 'текст' ; виж по-горе
LABEL "текст ; виж по-горе (само за единични думи)
TEXT
CIRCLE 10 TEXT “текст” ; задава текста на текущия графичен обект
Настройки на шрифта
FONTCOLOR/FONTCOLOUR
FONTCOLOR “green” ; задава цвета на шрифта
FONTFAMILY
FONTFAMILY “Linux Libertine G” ; задава шрифт (фамилия)
FONTFAMILY “Linux Libertine G:smcp=1” ; задава и особеност на шрифта (малки главни букви)
FONTFAMILY “Linux Libertine G:smcp=1&onum=1” ; малки главни букви + минускулни цифри
FONTSIZE
FONTSIZE 12 ; задава размер на шрифта 12пкт
FONTWEIGHT
FONTWEIGHT “bold” ; задава получер шрифт
FONTWEIGHT “normal” ; задава нормално тегло
FONTSTYLE
FONTSTYLE “italic” ; задава курсивен вариант
FONTSTYLE “normal” ; задава обикновен вариант
PICTURE (pic)
PICTURE служи за
-
групиране на фигури;
-
започване на нова фигура;
-
запазване на изображения във формат SVG и анимации във формат SVG/SMIL;
-
поддържане на съгласувани позиции и фигури в левия край на платното.
Групиране на фигури
; PICTURE [ команди_на_LibreLogo ]
PICTURE [ FORWARD 100 CIRCLE 100 ] ; групирана дървовидна фигура
Вижте също „Групиране“ в помощта на LibreOffice Writer.
TO tree location
PENUP POSITION location HEADING 0 PENDOWN
PICTURE [ FORWARD 100 CIRCLE 100 ] ; дървовидна групирана фигура
END
PICTURE [ tree [230, 400] tree [300, 400] ] ; групирани фигури в групирана фигура
Започване на нова фигура
PICTURE ; започва нова фигура
FORWARD 10 PICTURE FORWARD 10 ; две фигури
Запазване на изображения във формат SVG
PICTURE “пример.svg” [ CIRCLE 5 ] ; запазва рисунката като SVG файл в папката на потребителя
PICTURE “Desktop/пример.svg” [ FORWARD 100 CIRCLE 5 ] ; същото, с относителен път
PICTURE “/home/user/пример.svg” [ CIRCLE 5 ] ; абсолютен път за Unix/Linux
PICTURE “C:\пример.svg” [ CIRCLE 5 ] ; абсолютен път за Windows
Запазване на анимации във формат SVG/SMIL (рисунки с команди SLEEP)
PICTURE “анимация.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 ] ; запазване като анимация SVG/SMIL (виж също SLEEP)
PICTURE “анимация2.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 SLEEP 2000 ] ; същото, но със SLEEP след последния обект за циклично повторение: след 2 секунди анимацията се рестартира в браузърите, съвместими с SMIL
Съгласуване в левия край на платното
Използвайте PICTURE, за да поддържате взаимното разположение на позиции и фигури в левия край на платното:
PICTURE [ CIRCLE 20 POSITION [-100, 100] CIRCLE 20 ]
Цикли
REPEAT
; REPEAT брой [ команди ]
REPEAT 10 [ FORWARD 10 LEFT 45 CIRCLE 10 ] ; повтаряне 10 пъти
; броят не е задължителен
REPEAT [ POSITION ANY ] ; безкраен цикъл
REPCOUNT
Брояч на цикъла (също и в циклите с FOR и WHILE).
REPEAT 100 [ FORWARD REPCOUNT LEFT 90 ]
FOR IN
Цикъл по елементите на списък:
FOR i IN [1, 5, 7, 9, 11] [
FORWARD i
LEFT 90
]
Цикъл по знаците в знакова последователност:
FOR i IN “текст” [
LABEL i
FORWARD 10
]
WHILE
WHILE TRUE [ POSITION ANY ] ; безкраен цикъл
WHILE REPCOUNT <= 10 [ FORWARD 50 LEFT 36 ] ; като REPEAT 10 [ ... ]
BREAK
Спира цикъла.
REPEAT [ ; безкраен цикъл
POSITION ANY
IF REPCOUNT = 100 [ BREAK ] ; еквивалентно на REPEAT 100 [ ... ]
]
CONTINUE
Преход към следващата итерация на цикъла.
REPEAT 100 [
POSITION ANY
IF REPCOUNT % 2 = 0 [ CONTINUE ]
CIRCLE 10 ; чертае кръгове на всяка втора позиция
]
Условия
IF
; IF условия [ блок за true ]
; IF условие [ блок за true ] [ блок за false ]
IF a < 10 [ PRINT “Малко” ]
IF a < 10 [ PRINT “Малко” ] [ PRINT “Голямо” ]
AND, OR, NOT
Логически операции.
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” ] ; същото като горното
Подпрограми
TO, END
Нова дума (или процедура).
TO triangle
REPEAT 2 [ FORWARD 100 RIGHT 120 ] FILL
END
REPEAT 10 [ triangle PENUP POSITION ANY PENDOWN ]
OUTPUT
Резултатна стойност на функцията.
TO randomletter
OUTPUT RANDOM “qwertzuiopasdfghjklyxcvbnm”
END
PRINT randomletter + randomletter + randomletter ; отпечатва случайна последователност от три букви
STOP
Връща управлението от процедурата.
TO example number
IF number < 0 [ STOP ]
PRINT SQRT number ; отпечатва квадратния корен
]
example 100
example -1 ; не се отпечатва нищо, няма грешка
example 25
Променливи по подразбиране
ANY
Подразбирана случайна стойност за цветове и т.н.
PENCOLOR ANY ; случаен цвят на писеца
TRUE
Логическа стойност.
WHILE TRUE [ POSITION ANY ] ; безкраен цикъл
PRINT TRUE ; отпечатва true
FALSE
Логическа стойност.
WHILE NOT FALSE [ POSITION ANY ] ; безкраен цикъл
PRINT FALSE ; отпечатва false
PAGESIZE
PRINT PAGESIZE ; отпечатва като списък размера на страницата в пунктове, например [595.30, 841.89]
PI/π
PRINT PI ; отпечатва 3.14159265359
Вход/изход
PRINT “текст” ; отпечатва “текст” в диалогов прозорец
PRINT 5 + 10 ; отпечатва 15
INPUT
PRINT INPUT “Входна стойност?” ; показва подкана и приема низ чрез диалогов прозорец
PRINT FLOAT (INPUT “Първо число?”) + FLOAT (INPUT “Второ число?”) ; прост калкулатор
SLEEP
SLEEP 1000 ; изчаква 1000 мс (1 с)
GLOBAL
Задава глобални променливи, използвани в процедурите.
GLOBAL about
about = “LibreLogo”
TO example
PRINT about
GLOBAL about ; когато искаме да добавим нова стойност
about = “нова стойност за глобалната променлива”
END
example
PRINT about
Функции
RANDOM
PRINT RANDOM 100 ; случайно число с плаваща запетая (0 <= x < 100)
PRINT RANDOM “текст” ; случайна буква от “текст”
PRINT RANDOM [1, 2] ; случаен елемент от списъка (1 или 2)
INT
PRINT INT 3.8 ; отпечатва 3 (цялата част на 3,8)
PRINT INT RANDOM 100 ; случайно цяло число (0 <= x < 100)
PRINT INT “7” ; преобразува параметър – низ в цяло число
FLOAT
; преобразува параметъра – низ в число с плаваща запетая
PRINT 2 * FLOAT “5.5” ; отпечатва 11.0
STR
; преобразува числовия параметър в низ
PRINT “Резултат: ” + STR 5 ; отпечатва “Резултат: 5”
PRINT 10 * STR 5 ; отпечатва 5555555555
SQRT
PRINT SQRT 100 ; отпечатва 10, квадратния корен на 100
SIN
PRINT SIN 90 * PI/180 ; отпечатва 1.0 (синус от 90° в радиани)
COS
PRINT COS 0 * PI/180 ; отпечатва 1.0 (косинус от 0° в радиани)
LOG10
PRINT LOG10 100 ; отпечатва 2.0 (десетичен логаритъм от 100)
ROUND
PRINT ROUND 3.8 ; отпечатва 4 (закръглено 3,8)
PRINT ROUND RANDOM 100 ; случайно цяло число (0 <= x <= 100)
ABS
PRINT ABS -10 ; отпечатва 10, абсолютната стойност на -10
COUNT
PRINT COUNT “текст” ; отпечатва 5, броя знаци в “текст”
PRINT COUNT [1, 2, 3] ; отпечатва 3, дължината на списъка
SET
; Преобразува списък в множество на Python
PRINT SET [4, 5, 6, 6] ; отпечатва {4, 5, 6}
PRINT SET [4, 5, 6, 6] | SET [4, 1, 9] ; отпечатва {1, 4, 5, 6, 9}, обединение
PRINT SET [4, 5, 6, 6] & SET [4, 1, 9] ; отпечатва {4}, сечение
PRINT SET ([4, 5, 6, 6]) - SET [4, 1, 9] ; отпечатва {5, 6}, разлика
PRINT SET [4, 5, 6, 6] ^ SET [4, 1, 9] ; отпечатва {1, 5, 6, 9}, симетрична разлика
RANGE
; Генериране на списъци като в Python
PRINT RANGE 10 ; отпечатва [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 ; отпечатва [3, 4, 5, 6, 7, 8, 9]
PRINT RANGE 3 10 3 ; отпечатва [3, 6, 9]
FOR i IN RANGE 10 50 10 [ ; loop for [10, 20, 30, 40]
FORWARD i
LEFT 90
]
LIST
; премахва повтарящите се елементи от списък чрез преобразуване между множество и списък
PRINT LIST (SET [1, 3, 5, 5, 2, 1]) ; отпечатва [1, 3, 5, 2]
TUPLE
Преобразуване към n-торка на Python (константен списък)
PRINT TUPLE [4, 5]
SORTED
Връща сортиран списък.
PRINT SORTED [5, 1, 3, 4] ; отпечатва [1, 3, 4, 5]
SUB
Замества поредица от знаци чрез регулярен израз.
PRINT SUB (“т”, “Т”, “текст”) ; отпечатва “Текст”, заменяйки “т” с “Т”
PRINT SUB (“(.)”, “\\1\\1”, “текст”) ; отпечатва “ттеекксстт”, удвоявайки всеки знак
SEARCH
Претърсва знакова последователност чрез регулярен израз.
IF SEARCH (“\w”, "word") [ PRINT “В думата има буква.” ]
FINDALL
Намира всички знакови последователности във входния низ, които отговарят на дадения регулярен израз.
PRINT FINDALL(“\w+”, “Кучета, котки.”) ; отпечатва [“Кучета”, “котки”], списък от думите.
MIN
PRINT MIN [1, 2, 3] ; отпечатва 1, най-малкия елемент на списъка
MAX
PRINT MAX [1, 2, 3] ; отпечатва 3, най-големия елемент от списъка
Константи за цветове
PENCOLOR “SILVER” ; задаваме по име
PENCOLOR [1] ; задаване по идентификатори
PENCOLOR “~SILVER” ; случаен сивкав цвят
Идентификатор |
Име |
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 |