Enhavo
Indekso 🔎︎

# LibreLogo

LibreLogo estas simpla, asimilita, Logo-simila programa medio kun testudaj vektoraj grafikoj por lernigi komputadon (programadon kaj tekstoprilaboradon), perkomputila eldonado kaj grafikan fasonadon. Vidu je http://www.numbertext.org/logo/librelogo.pdf.

## LibreLogo-ilbreto

La ilobreto LibreLogo (Vido - Ilobretoj - Logo) enhavas bildsimbolojn por movi testudon, startigi programon, haltigi, hejmen, vakigi ekranon, emfazi sintakson/traduki, kaj breton por enmetado (komandlinion).

## Testudomovaj bildsimboloj

Ili estas ekvivalentoj de la Logo-komandoj "ANTAŬEN 10", "RETROEN 10", "MALDEKSTREN 15", "DEKSTREN 15". Alklaki iun el la bildsimboloj ankaŭ fokusigos la testudan formon, rulumante la paĝon al ĝia pozicio.

## Ruli Logo-programon

Alklaku ĉe la bildsimbolo "Startigi Logo-programon" por ruli la tekston (aŭ nur elektitan tekston) de la dokumento kiel LibreLogo-programon. En vaka dokumento, ekzempla programo enmetiĝos kaj ruliĝos.

Alklaku la bildsimbolon "Haltigi" por haltigi la ruladon de la programo.

## Hejmen

Alklaku la bildsimbolon "Hejmen" por reŝargi la pozicion kaj agordaron de la testudo.

## Vakigi la ekranon

Alklaku la bildsimbolon "Vakigi la ekranon" por forigi la objektojn de la dokumento.

## Programredaktilo/Emfazi sintakson/Traduki

La bildsimbolo "sorĉbastono" agordas dupaĝan aranĝon por programredaktado, etendas kaj majuskligas la mallongigitajn, minusklajn Logo-komandojn en la Verkilo-dokumento. Ŝanĝi la lingvon de la dokumento (LibreOffice - Preferoj Iloj - Agordaĵoj - Lingvaj agordoj - Lingvoj - Okcidentaj) kaj alklaku al ĉi tiu bildsimbolo por traduki la Logo-programon al la elektita lingvo.

## Komandlinio

Tajpu la enigan klavon en la komandlinio por ruli la enhavon. Por haltigi la programon uzu la bildsimbolon "Haltigi".

Tenu la klavon Enigi por ripeti la komandlinio, ekzemple, en la jena komandserio:

     ANTAŬEN 200 MALDEKSTREN 89

Por reagordi la komandan linion, triope alklaku ĝin aŭ premu je Komando Stir+A por elekti la antaŭajn komandojn, kaj tajpu la novajn komandojn.

## Grafika fasado de bazaj testudaj agordoj

La testuda formo de LibreLogo estas normala fiksita desegna objekto. Vi povas loki kaj turni ĝin en la normala maniero, per la muso kaj la bildsimbolo Turni de la ilobreto Atributoj de desegnaj objektoj. Ŝanĝu la agordojn por Linilarĝo, Linikoloro, kaj Zonkoloro de la testuda formo per agordo de PLUMLARĜO, PLUMKOLORO kaj PLENKOLORO de LibreLogo.

## Redakti programon

LibreLogo-desegnaĵoj kaj programoj uzas la saman Verkilo-dokumenton. La LibreLogo-pentrotolo troviĝas en la unua paĝo de la Verkilo-dokumento. Vi povas enmeti paĝosalton antaŭ la LibreLogo-programoj kaj agordi la paĝan zomon per la sorĉbastono de la Logo-ilobreto, ankaŭ ŝanĝi la tiparan grandon por komforta dupaĝa aranĝo por LibreLogo-programado: la maldekstra (unua) paĝo estas la pentrotolo, la dekstra (dua) paĝo estas por redakti la LibreLogo-programon.

# LibreLogo-programa lingvo

LibreLogo estas facile asimilebla, Logo-simila programlingvo. Ĝi jam estas asimilita en multaj lingvoj el la lingvaj komunumoj de LibreOffice. Ĝi estas retro-kongrua kun la pli malnovaj Logo-sistemoj en la kazo de simplaj Logo-programoj tipe uzataj en edukado, ekzemple

     AL triangulo :grando
     RIPETI 3 [
       ANTAŬEN :grando
       MALDEKSTREN 120
     ]
     FINO

     triangulo 10 triangulo 100 triangulo 200

## Diferencoj de la Logo-programa lingvo

- Listeroj estu apartigitaj de komoj: POZICIO [0,0]

- Programaj blokoj kaj listoj estas malsamaj

- - Programaj blokoj bezonas spacon aŭ novan linion ĉe krampoj: RIPETI 10 [ANTAŬEN 10 MALDEKSTREN 36]

  - Listoj bezonas apudajn krampojn: POZICIO [0,0], ne POZICIO [ 0, 0 ]

- unuliniaj funkciaj deklaroj ne estas subtenataj (AL kaj FINO bezonas novajn liniojn).

## Aliaj atributoj de LibreLogo

- Punktokomo estas malnepra antaŭ la nomo de variablo.

       AL triangulo grando
         RIPETI 3 [ ANTAŬEN grando MALDEKSTREN 120 ]
       FINO

- Ĉena notacio ankaŭ subtenas ortografian kaj pitonan sintakson.

       PRINT "vorto ; origina Logo-sintakso
       PRINT “Ajna teksto.” ; ortografio, Writer
       PRINT 'Ajna teksto.' ; Python sintakso

- Pitona listo- kaj ĉeno-traktado

       PRESU “teksto”[2] ; presu “x”
       PRESU “teksto”[1:3] ; presu “ex”

- Piton-simila POR-iteracio

- Piton-simila variablo-deklaro:

       x = 15
       PRESU x

- Mankas ekstraj informpetaj funkcioj:

       PRESU PLENKOLORO
       p = POZICIO
       PRESU p
       PRESU 10 [ POZICIO AJNA POZICIO p ]

- Alternativa enkrampigo en funkciovokoj

       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-komandoj

## Baza sintakso

### Usklecodistingo

Komandoj, koloraj konstantoj estas neusklecodistingaj:

     PRESU “Saluton, Mondo!”
     presu “Saluton, Mondo, denove!”

Nomoj de variabloj estas usklecodistingaj:

     a = 5
     A = 7
     PRESU a
     PRESU A

### Programaj linioj

Lines of a LibreLogo program are paragraphs in the Writer document. A program line can contain multiple commands:

     PRESU “Saluton, Mondo!” PRESU “LibreLogo”

### Komentoj

Linioj aŭ linipartoj estas komentoj ek de punktokomo ĝis la fino de la linio (alineo):

     ; iuj komentoj
     PRESU 5 * 5 iuj komentoj

### Rompi programliniojn al pluraj alineoj

Eblas rompi programlinion por pliaj alineoj uzante la tildo-signon ĉe la fino de la linio:

     PRESU “Ĉi tiu estas tre longa ” + ~
           “averta mesaĝo”

## Testudo moviĝas

### ANTAŬEN (an)

     ANTAŬEN 10 ; movi antaŭen 10pt (1pt = 0,35 mm)
     ANTAŬEN 10pt ; vidu supre
     ANTAŬEN 0.5in ; movi antaŭen 0.5 inch (1 inch = 2.54 cm)
     ANTAŬEN 1" ; vidu supre
     FD 1mm
     FD 1cm

### RETROEN (re)

     RETROEN 10 ; movi retroen 10pt

### MALDEKSTREN (md)

     MALDEKSTREN 90 ; turni maldekstren 90 gradojn
     MALDEKSTREN 90° ; vidu supre
     LT 3h ; vidu supre (horloĝa pozicio)
     LT ajna ; turni al hazarda pozicio

### DEKSTREN (dt)

     DEKSTREN 90 ; turni dekstren 90 gradojn

### PLUMOFOR (pf)

     PLUMOFOR ; testudo moviĝos sen desegni

### PLUMOEK (pe)

     PLUMOEK ; testudo moviĝos desegnante

### POZICIO (poz)

     POZICIO [0, 0] ; turni kaj movi al la supra-maldekstra angulo
     POZICIO PAĜOGRANDO ; turni kaj movi al la malsupra-dekstra angulo
     POZICIO [PAĜOGRANDO[0], 0] ; turni kaj movi al la supra-dekstra angulo
     POZICIO AJNA ; turn kaj movi al hazarda pozicio

### DIREKTO (d)

     DIREKTO 0 ; turni norden
     DIREKTO 12h ; turni norden
     DIREKTO [0, 0] ; turni al la supra maldekstra angulo
     DIREKTO AJNA ; turni al hazarda direkto

## Aliaj testudaj komandoj

### KAŜU_TESTUDON (kt)

     KAŜU_TESTUDON ; por kaŝi la testudon (ĝis la komando vidigu_testudon)

### VIDIGU_TESTUDON (vt)

     VIDIGU_TESTUDON ; vidigu testudon

### HEJMEN

     HEJMEN ; reagordi komencan testudan pozicion

### MALPLENIGU_EKRANON (me)

     MALPLENIGU_EKRANON ; forigi desegnajn objektojn el la dokumento

### PLENIGU kaj FERMU

     PLENIGU ; fermi kaj plenigi la aktualan liniformon aŭ punktojn
     FERMU ; fermi la aktualan liniformon aŭ por konekti la punktojn

Ekzemple: plenigi regulan triangulon:

     ANTAŬEN 50 MALDEKSTREN 120 ANTAŬEN 50 PLENIGU

Ekzemple: desegni regulan triangulon:

     ANTAŬEN 50 MALDEKSTREN 120 ANTAŬEN 50 FERMU

## Plumaj agordoj

### PLUMLARĜO (pl)

     PLUMLARĜO 100 ; linilarĝo estu 100 pt
     PLUMOGRANDO AJNA ; ekvivalenta al PLUMGRANDO HAZARDA 10

### PLUMKOLORO (pk)

     PLUMKOLORO “ruĝa” ; agordi ruĝan plumkoloron (laŭ koloronomo, vidu kolorajn konstantojn)
     PLUMKOLORO [255, 255, 0] ; agordi koloron flava (RGB-listo)
     PLUMKOLORO 0xffff00 ; agordi koloron flava (hexkodo)
     PLUMKOLORO 0 ;agordi koloron nigra (0x000000)
     PLUMKOLORO AJNA ; hazarda koloro
     PLUMKOLORO [5] ; agordi koloron ruĝa (laŭ koloroidentigilo, vidu kolorajn konstantojn)
     PLUMKOLORO “nevidebla” ; nevidebla plumkoloro por formoj sen videbla konturo
     PLUMKOLORO “~ruĝa” ; agordi koloron al hazarda ruĝa koloro

### PLUMTRAVIDEBLO

     PLUMTRAVIDEBLO 80; agordi la travideblon de la aktuala plumkoloro al 80%

### PLUMĈAPO/LINIĈAPO

     PLUMĈAPO “neniu” ; sen ekstra linifino (apriora)
     PLUMĈAPO “ronda” ; ronda linifino
     PLUMĈAPO “kvadrato” ; kvadrata linifino

### PLUMLIGO/LINILIGO

     PLUMLIGO “ronda” ;  ronda liniligo (defaŭlto)
     PLUMLIGO “oblikva” ; klinita liniligo
     PLUMLIGO “bevelo” ; bevela liniligo
     PLUMLIGO “neniu” ; sen liniligo

### LINISTILO

     LINISTILO “solida” ; solida linio (defaŭlto)
     LINISTILO “punkta” ; punkta linio
     LINISTILO “streketa” ; streketa linio

     ; propra kunkto-streketa ŝablono agordita per listo kun la jenaj argumentoj:
     ; – nombro de la najbaraj punktoj
     ; – longo de punkto
     ; – nombro de la najbaraj streketoj
     ; – longo de la streketo
     ; – distanco de la kunktoj/streketoj
     ; – tipo (malnepra):
     ;   0 = punktoj estas ortanguloj (defaŭlto)
     ;   2 = punktoj estas kvadratoj (longo kaj distanco rilatas al la linilarĝo)

     LINISTILO [3, 1mm, 2, 4mm, 2mm, 2] ; ...––...––...––

## Plenigaj agordoj

### PLENKOLORO (plk)

     PLENKOLORO “blua” ; plenigi per blua koloro, vidu ankaŭ PLUMKOLORO
     PLENKOLORO “nevidebla” CIRKLO 10 ; malplena cirklo
     PLENKOLORO [“blua”, “ruĝa”] ; kolortransiro inter ruĝa kaj blua
     PLENKOLORO [[255, 255, 255], [255, 128, 0]] ; inter blanka kaj oranĝa
     PLENKOLORO [“blua”, “ruĝa”, 1, 0, 0] ; agordi aksan kolortransiron (kun la bezonataj turno kaj borderaj agordoj), eblaj valoroj: 0-5 = lineara, aksa, radiusa, elipsa, kvadrata kaj ortangula kolortransiroj
     PLENKOLORO [“ruĝa”, “blua”, 0, 90, 20] ; lineara kun 20% bordero, turnita al 90 gradoj de la aktuala direkto de la testudo
     PLENKOLORO [“ruĝa”, “blua”, 0, 90, 20, 0, 0, 200, 50] ; de 200% al 50% kolorintenso
     PLENKOLORO [AJNA, AJNA, 2, 0, 0, 50, 50] ; radiusa kolortransiro kun hazardaj koloroj kaj 50-50% horizontala kaj vertikala pozicioj de la centro

### PLENIGTRAVIDEBLO

     PLENIGTRAVIDEBLO 80 ; agordi la travideblon de la aktuala pleniga koloro al 80%
     PLENIGTRAVIDEBLO [80] ; agordi linearan travideblotransiron de 80% al 0%
     PLENIGTRAVIDEBLO [80, 20] ; agordi linearan travideblotransiron de 80% al 20%
     PLENIGTRAVIDEBLO [80, 20, 1, 90] ; agordi aksian travideblotransiron turnitan 90 gradojn de la aktuala direkto de la testudo
     PLENIGTRAVIDEBLO [80, 20, 2, 0, 20, 50, 50] ; agordi radian travideblotransiron de ekstera 80% al interna 20% travideblo kun 20% bordero kaj kun 50-50% horizontala kaj vertikala pozicioj de la centro

### PLENIGA_STILO

     PLENIGA_STILO 0 ; plenigo sen haĉo (default)
     PLENIGA_STILO 1 ; nigra unuopa haĉo (horizontala)
     PLENIGA_STILO 2 ; nigra unuopa haĉo (45 gradoj)
     PLENIGA_STILO 3 ; nigra unuopa haĉo (-45 gradoj)
     PLENIGA_STILO 4 ; nigra unuopa haĉo (vertikala)
     PLENIGA_STILO 5 ; ruĝe kruce haĉita (45 gradoj)
     PLENIGA_STILO 6 ; ruĝe kruce haĉita (0 gradoj)
     PLENIGA_STILO 7 ; blue kruce haĉita (45 degrees)
     PLENIGA_STILO 8 ; blue kruce haĉita (0 gradoj)
     PLENIGA_STILO 9 ; blue triope kruce haĉita
     PLENIGA_STILO 10 ; nigre larĝe unuope haĉita (45 gradoj)

     ; propra haĉo specifita per listo de la jenaj argumentoj:
     ; – stilo (1 = unuope, 2 = duope, 3 = triope haĉita)
     ; – koloro
     ; – distano
     ; – grado

     PLENIGA_STILO [2, “verda”, 3pt, 15°] ; verde kruce haĉita (15 gradoj)

## Desegnaj objektoj

### CIRKLO

     CIRKLO 100 ; desegni cirklon (diametro = 100pt)

### ELIPSO

     ELIPSO [50, 100] ; desegni elipson kun diametroj 50 kaj 100
     ELIPSO [50, 100, 2h, 12h] ; desegni elipsan sektoron (ek de horpoĝa pozicio 2h ĝis 12h)
     ELIPSO [50, 100, 2h, 12h, 2]  ; desegni elipsan sektoron
     ELIPSO [50, 100, 2h, 12h, 3]  ; desegni elipsan arkon

### KVADRATO

     KVADRATO 100 ; desegni kvadratan formon (grando = 100pt)

### ORTANGULO

     ORTANGULO [50, 100] ; desegni ortangulan formon (50×100pt)
     ORTANGULO [50, 100, 10] ; desegni ortangulon kun kurbaj anguloj

### PUNKTO

     PUNKTO ; desegni punkton kun la larĝo kaj koloro de la plumo

FERMU povas konekti la lastajn punktojn, PLENIGU povas plenigi la formon difinitan per punktoj. Ekzemple, estas facile desegni “platan” stelon komencante ĉe ĝia centro:

     PLUMOFOR
       RIPETU 5 [
     ANTAŬEN 80
     PUNKTO
     RETRO 80
     DEKSTREN 36
     ANTAŬEN 50
     PUNKTO
     RETRO 50
     DEKSTREN 120
     ] PLENIGU

### ETIKEDO

     ETIKEDO “teksto” ; presi tekston ĉe la pozicio de la testudo
     ETIKEDO 'teksto' ; vidu supre
     ETIKEDO "teksto ; vidu supre (por nur unuopaj vortoj)

### TEKSTO

     CIRKLO 10 TEKSTO “teksto” ; agordi tekston de la reala desegna objekto

## Tiparaj agordoj

### TIPARKOLORO/TEKSTOKOLORO

     TIPARKOLORO “verda” ; agordi koloron de tiparo

### TIPAROFAMILIO

     TIPAROFAMILIO “Linux Libertine G” ; agordi tiparon (familio)
     TIPAROFAMILIO “Linux Libertine G:smcp=1” ; agordi ankaŭ tiparan atributon (malgrandaj majuskloj)
     TIPAROFAMILIO “Linux Libertine G:smcp=1&onum=1” ; malgrandaj majuskloj + malnovaj ciferoj

### TIPAROGRANDO/TEKSTOALTO

     TIPAROGRANDO 12; agordi al 12pt

### TIPAROPEZO/TEKSTOPEZO

     TIPAROPEZO “grasa” ; agordi algrasa tiparo
     TIPAROPEZO “normala” ; agordi al normala pezo

### TIPAROSTILO

     TIPAROSTILO “kursiva” ; agordi al kursiva variaĵo
     TIPAROSTILO “normala” ; agordi al normala variaĵo

## BILDO (b)

BILDO estas por

- grupigi formojn;

- komenci novajn liniajn formojn;

- konservas SVG-bildojn kaj SVG/SMIL-animaciojn;

- konservi la koherecon de pozicioj kaj liniaj formoj ĉe la maldekstra bordero.

### Grupigi formojn

     ; BILDO [ LibreLogo_komandoj ]
     BILDO [ ANTAŬEN 100 CIRKLO 100 ] ; arbosimila grupigita formo

See also “Group” in LibreOffice Writer Help.

     AL arbo loko
       PLUMOFOR POZICIO loko DIREKTO 0 PLUMOEK
       BILDO [ ANTAŬEN 100 CIRKLO 100 ] ; arbosimila grupigita formo
     FINO

     BILDO [ arbo [230, 400] arbo [300, 400] ] ; grupigitaj formoj en grupigita formo

### Komenci novajn formojn

     BILDO ; komenci novan linian formon
     ANTAŬEN 10 BILDO  ANTAŬEN 10 ; du liniaj formoj

### Konservas SVG-bildojn

     BILDO “ekzemplo.svg” [ CIRKLO 5 ] ; konservi la bildon kiel SVG-bildon en la dosierujo de la uzanto
     BILDO “Desktop/ekzemplo.svg” [ ANTAŬEN 100 CIRKLO 5 ] ; kiel supre, kun relativa vojo
     BILDO “/home/user/ekzemplo.svg” [ CIRKLO 5 ] ; absoluta vojo por Unikso/Linukso
     BILDO “C:\ekzemplo.svg” [ CIRKLO 5 ] ; absoluta vojo por Vindozo

### Konservas SVG/SMIL-animaciojn (desegnaĵojn kun la komando DORMU)

     BILDO “animacio.svg” [ CIRKLO 5 DORMU 1000 CIRKLO 99 ] ; konservi kiel SVG/SMIL-animacion (vidu ankaŭ ĉe DORMU)
     BILDO “animacio2.svg” [ CIRKLO 5 DORMU 1000 CIRKLO 99 DORMU 2000 ] ; kiel supre, sed uzante je DORMU post la lasta objekto rezultigos iteracion: post 2 sekundoj la SVG-animacio restartas en SMIL-kongrua foliumilo

### Kohereco ĉe la maldekstra bordero

Uzi je BILDO por konservi la koherecon de pozicioj kaj liniaj formoj ĉe la maldekstra bordero de Verkilo:

     BILDO [ CIRKLO 20 POZICIO [-100, 100] CIRKLO 20 ]

## Iteracioj

### RIPETU

     ; RIPETU numero [ komandoj ]

     RIPETU 10 [ ANTAŬEN 10 MALDEKSTREN 45 CIRKLO 10 ] ; ripeti 10-foje

     ; numero estas malnepra

     RIPETU [ POZICIO AJNA ] ; senfine interacii

### RIPETONOMBRO

Iteracia variablo (ankaŭ en POR kaj DUM iteracioj).

     RIPETU 100 [ ANTAŬEN RIPETONOMBRO MALDEKSTREN 90 ]

### POR EN

Iteracio por la listaj elementoj:

     POR i EN [1, 5, 7, 9, 11] [
       ANTAŬEN i
       MALDEKSTREN 90
     ]

Iteracio por la signoj de signosinsekvo:

     POR i EN “teksto” [
       ETIKEDO i
       ANTAŬEN 10
     ]

### DUM

     DUM VERA [ POZICIO AJNA ] ; senfine interacii
     DUM RIPETONOMBRO <= 10 [ ANTAŬEN 50 MALDEKSTREN 36 ] ; kiel RIPETU 10 [ ... ]

### SALTO

Haltigi la interacion.

     RIPETU [ ; senfine
       POZICIO AJNA
       SE RIPETONOMBRO = 100 [ SALTO ]  ; ekvivalento de la RIPETU 100 [ ... ]
     ]

### DAŬRIGU

Salti al la sekva iteracio.

     RIPETU 100 [
       POZICIO AJNA
       SE RIPETONOMBRO % 2 = 0 [ DAŬRIGU ]
       CIRKLO 10 ; desegni cirklon ĉe ĉiu dua pozicio
     ]

## Kondiĉoj

### SE

     ; SE kondiĉo [ vera bloko ]
     ; SE kondiĉo [ vera bloko ] [ falsa bloko ]

     SE a < 10 [ PRESU “Malgranda” ]
     SE a < 10 [ PRESU “Malgranda” ] [ PRESU “Granda” ]

### KAJ, AŬ, NE

Logikaj operacisimboloj.

     SE a < 10 KAJ NE a = 5 [ PRESU “0, 1, 2, 3, 4, 6, 7, 8 aŭ 9” ]
     SE a < 10 KAJ a != 5 [ PRESU “0, 1, 2, 3, 4, 6, 7, 8 aŭ 9” ] ; kiel supre

## Subproceduroj

### AL, FINO

Nova vorto (aŭ proceduro).

     AL triangulo
       RIPETU 2 [ ANTAŬEN 100 DEKSTREN 120 ] PLENIGU
     FINO

     RIPETU 10 [ triangulo PLUMOFOR POZICIO AJNA PLUMOEK ]

### ELIGAĴO

Liveras valoron de la funkcio.

     AL hazardasigno
       ELIĜU HAZARDA “ĉĝĵertzuiopasdfghjklĥŝŭcvbnm”
     FINO

     PRESU hazardasigno + hazardasigno + hazardasigno ; presiĝu 3-litera hazarda signa serio

### HALTU

Reveni el proceduro.

     AL ekzemplo numero
       SE numero < 0 [ HALTU ]
       PRESU KVRAD numero ; presiĝu kvadrata radiko
     ]

     ekzemplo 100
     ekzemplo -1 ; sen eligaĵo kaj eraro
     ekzemplo 25

## Defaŭltaj variabloj

### AJNA

Defaŭltaj hazardaj valoroj de koloroj, ktp.

     PLUMKOLORO AJNA ; hazarda plumkoloro

### VERA

Logika valoro.

     DUM VERA [ POZICIO AJNA ] ; senfine iteracii
     PRESU VERA ; presiĝu vera

### FALSA

Logika valoro.

     DUM NE FALSA [ POZICIO AJNA ] ; senfine iteracii
     PRESU FALSA ; presu falsa

### PAĜOGRANDO

     PRESU PAĜOGRANDO; presiĝu listo de paĝograndoj en punktoj, ekz. [595.30, 841.89]

### PI/π

     PRESU PI ; presiĝu 3,14159265359

## Eniĝu/Eliĝu

### PRESU

     PRESU “teksto” ; presi je “teksto” en dialogo
     PRESU 5 + 10 ; presi je 15

### ENIĜU

     PRESU ENIĜU “Enigu valoron?” ; peti kaj presi ĉenon per informpeta dialogo
     PRESU REELO (ENIĜU “Unua numero?”) + REELO (ENIĜU “Dua numero?”) ; simpla kalkulilo

## DORMU

     DORMU 1000 ; atendu 1000 ms (1 sek)

## ĈIE

Agordi ĉieajn variablojn uzotajn en proceduroj.

     ĈIE pri
     pri = “LibreLogo”

     AL ekzemplo
       PRESU pri
       ĈIE pri ; kiam ni volas enigi novan valoron
       pri = “nova valoro por la ĉiea variablo”
     FINO

     ekzemplo
     PRESU pri

## Funkcioj

### HAZARDA

     PRESU HAZARDA 100 ; hazarda reelo (0 <= x < 100)
     PRESU HAZARDA “teksto” ; hazarda litero el “teksto”
     PRESU HAZARDA [1, 2] ; hazarda listero (1 aŭ 2)

### ENT

     PRESU ENT 3,8 ; presiĝu 3 (entjera parto de 3,8)
     PRESU ENT HAZARDA 100 ; hazarda nombro (0 <= x < 100)
     PRESU ENT “7” ; konverti la ĉenan parametron al entjero

### REELA

     ; konverti la ĉenan parametron al reelo
     PRESU 2 * REELA “5.5” ; presu 11.0

### ĈENO

     ; konverti la numeran parametron al ĉeno
     PRESU “Rezulto: ” + ĈENO 5 ; presiĝu “Rezulto: 5”
     PRESU 10 * ĈENO 5 ; presiĝu 5555555555

### KVRAD

     PRESU KVRAD 100 ; presiĝu 10, kvadrata radiko de 100

### SIN

     PRESU SIN 90 * PI/180 ; presu 1.0 (sinuso de 90° en radianoj)

### KOS

     PRESU KOS 0 * PI/180 ; presu 1.0 (kosinuso de 0° en radianoj)

### LOG10

     PRESU LOG10 100 ; presi 2,0 (ordinara logaritmo de 100)

### RONDIGU

     PRESU RONDIGU 3.8 ; presiĝu 4 (rondigas 3.8)
     PRESU RONDIGU HAZARDA 100 ; hazarda entjera nombro (0 <= x <= 100)

### ABS

     PRESU ABS -10 ; presiĝu 10, la absoluta valoro de -10

### NOMBRU

     PRESU NOMBRU “teksto” ; presiĝu 6, la nombro da signoj en “teksto”
     PRESU NOMBRU [1, 2, 3] ; presiĝu 3, la longo de la listo

### AGORDU

     ; konverti liston al Pitona aro
     PRESU ARO [4, 5, 6, 6] ; presiĝu {4, 5, 6}
     PRESU ARO [4, 5, 6, 6] | ARO [4, 1, 9] ; presiĝi {1, 4, 5, 6, 9}, unio
     PRESU ARO [4, 5, 6, 6] & ARO [4, 1, 9] ; presiĝi {4}, intersekco
     PRESU ARO ([4, 5, 6, 6]) - ARO [4, 1, 9] ; presiĝi {5, 6}, diferenco
     PRESU ARO [4, 5, 6, 6] ^ ARO [4, 1, 9] ; presiĝi {1, 5, 6, 9}, simetria diferenco

### AMPLEKSO

     ; generi pitonsimilan liston
     PRESU AMPLEKSO 10 ; presiĝi [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
     PRESU AMPLEKSO 3 10 ; presiĝi [3, 4, 5, 6, 7, 8, 9]
     PRESU AMPLEKSO 3 10 3 ; presiĝi [3, 6, 9]

     POR i EN AMPLEKSO 10 50 10 [ ; iteracii por [10, 20, 30, 40]
       ANTAŬEN i
       MALDEKSTREN 90
     ]

### LISTO

     ; forigi la ripetitajn elementojn el listo per ara kaj lista konvertado
     PRESU LISTO (ARO [1, 3, 5, 5, 2, 1]) ; presiĝi [1, 3, 5, 2]

### OPO

Konverti al Pitona opo (nemodifebla listo)

     PRESU OPO [4, 5]

### ORDIGITA

Ĝi liveras ordigitan liston.

     PRESU ORDIGITA [5, 1, 3, 4] ; presiĝi [1, 3, 4, 5]

### SUB

Anstataŭigas signaron per regulaj esprimoj.

     PRESU ANSTAT (“t”, “T”, “teksto”) ; presiĝi “TeksTo”, anstataŭigas “t” per “T”
     PRESU ANSTAT (“(.)”, “\\1\\1”, ”mato”) ; presiĝi “mmaattoo”, duopigas ĉiun signon

### SERĈU

Serĉi signarojn per regulaj esprimoj.

     SE SERĈU (“\v”, vorto) [ PRESU “Litero en la vorto.” ]

### ĈIONSERĈU

Serĉi ĉiujn signarojn en la enigaĵo kiuj kongruas kun la donita regula esprimo.

     PRESU ĈIONSERĈU(“\w+”, “Hundoj, katoj.”) ; presiĝi [“Hundoj”, “katoj”], la listo de vortoj.

### MIN

     PRESU MIN [1, 2, 3] ; presiĝi 1, la plej malgranda elemento de la listo

### MAKS

     PRESU MAKS [1, 2, 3] ; presiĝi 3, la plej granda elemento de la listo

## Koloraj konstantoj

     PLUMKOLORO “ARĜENTA” ; agordi laŭ nomo
     PLUMKOLORO [1] ; agordi laŭ identigilo
     PLUMKOLORO “~ARĜENTA” ; hazarda arĝenta koloro

Identigilo | Nomo
--- | ---
0 | NIGRA
1 | ARĜENTA
2 | GRIZA
3 | BLANKA
4 | KARMEZINA
5 | RUĜA
6 | PURPURA
7 | FUKSINA
8 | VERDA
9 | LIMETA
10 | OLIVA
11 | FLAVA
12 | MALHELBLUA
13 | BLUA
14 | BLUVERDA
15 | CEJANBLUA
16 | ROZKOLORA
17 | TOMATA
18 | ORANĜA
19 | ORA
20 | VIOLA
21 | ĈIELBLUA
22 | ĈOKOLADA
23 | BRUNA
24 | NEVIDEBLA