LibreLogo

O LibreLogo é um ambiente de programação ao estilo da linguagem Logo, simples, traduzido, com desenhos vetoriais feitos com a tartaruga do Logo; foi feito para ensino de computação (programação e processamento de palavras), para editoração eletrônica e para design gráfico. Consulte em inglês http://www.numbertext.org/logo/librelogo.pdf.

Barra de ferramentas LibreLogo

A barra de ferramentas LibreLogo (Exibir - Barras de ferramentas - Logo) contém ícones para movimentação da tartaruga, execução do programa, parar programa, ir para o centro, limpar a tela, tradução e colocação da sintaxe em maiúsculas, e uma caixa de entrada (linha de comandos).

Ícones de movimentação da tartaruga

Eles são equivalentes aos comandos Logo “PARAFRENTE 10”, “PARATRÁS 10”, “PARAESQUERDA 15º”, “PARADIREITA 15º”. Clicar em um desses ícones também vai colocar o foco na tartaruga, rolando a página para a sua posição.

Executar programa Logo

Clique no ícone “Executar programa Logo” para executar o texto (ou apenas o texto selecionado) no documento do Writer contendo um programa LibreLogo. Para um documento vazio, um programa de exemplo será inserido e executado.

Clique no ícone “PARAR” para interromper a execução do programa.

PARACENTRO

Clique no ícone “PARACENTRO” para reiniciar a posição e as configurações da tartaruga.

Limpar tela (TAT)

Clique no ícone “Limpar tela” para remover os objetos de desenho do documento.

Editor do programa / Destaque da sintaxe / Tradução

O ícone da “varinha mágica” configura um leiaute de duas páginas para edição do programa, coloca por extenso e também converte para maiúsculas os comandos Logo abreviados no documento do Writer. Altere o idioma do documento (Ferramentas - Opções - Configurações de idioma - Idiomas - Ocidental) e clique neste ícone para traduzir o programa Logo para o idioma selecionado.

Linha de comandos

Pressione Enter na linha de comandos para executar o seu conteúdo. Para interromper o programa, use o ícone “PARAR”.

Mantenha a tecla Enter pressionada para repetir a linha de comandos, por exemplo, na seguinte sequência de comandos:

 PARAFRENTE 200 PARAESQUERDA 89

Para reiniciar a linha de comandos, clique nela três vezes, ou pressione Ctrl+A para selecionar os comandos anteriores, e digite os novos comandos.

Interface gráfica do usuário para as configurações básicas da tartaruga

A tartaruga do LibreLogo é um objeto de desenho com tamanho fixo. Você pode posicioná-la e girá-la da forma convencional, também, utilizando o mouse e o ícone Girar na barra de ferramentas Desenho. Mude as configurações Largura da Linha, Cor da Linha e Cor da Área da tartaruga para definir os atributos dos comandos do LibreLogo MUDARESPESSURADOLÁPIS, MUDARCORDOLÁPIS e MUDARCORDAPINTURA.

Edição do programa

Os desenhos e programas do LibreLogo usam o mesmo documento Writer. A tela do LibreLogo está sobre a primeira página do documento. Você pode inserir uma quebra de página antes dos programas LibreLogo e configurar o zoom utilizando o ícone da “varinha mágica” na barra de ferramentas Logo; também pode alterar o tamanho da letra para um leiaute de duas páginas que seja confortável para a programação com o LibreLogo: a página esquerda (a primeira) é a tela, e a página da direita (a segunda) é para o editor de programas do LibreLogo.

Linguagem de programação LibreLogo

LibreLogo é uma linguagem ao estilo do Logo facilmente traduzível, traduzida para diversos idiomas por comunidades nativas de cada língua. Possui compatibilidade retroativa com sistemas Logo mais antigos, no caso de programas Logo simples utilizados em educação, por exemplo.

 APRENDER triangulo :tamanho
REPETIR 3 [
PARAFRENTE :tamanho
PARAESQUERDA 120
]
FIM

triangulo 10 triangulo 100 triangulo 200

Diferenças em relação à linguagem de programação Logo

Outras características do LibreLogo

Comandos do LibreLogo

Sintaxe básica

Distinção entre maiúsculas e minúsculas

Os comandos e as constantes de cores não diferenciam minúsculas de maiúsculas:

 ESCREVER “Olá, Mundo!”
escrever “Olá, Mundo, novamente!”

Já os nomes das variáveis diferenciam minúsculas de maiúsculas:

 a = 5
A = 7
ESCREVER a ; valor 5
ESCREVER A ; valor 7

Linhas do programa

As linhas de um programa LibreLogo são parágrafos no documento do Writer. Uma linha de programa pode conter múltiplos comandos:

 ESCREVER “Olá, Mundo!” ESCREVER “LibreLogo”

Comentários

Linhas - ou partes delas - são consideradas como comentários a partir do sinal de ponto e vírgula até o final da linha (parágrafo):

 ; algum comentário
ESCREVER 5 * 5 ; algum comentário

Quebra de linhas do programa em múltiplos parágrafos

É possível quebrar uma linha do programa em vários parágrafos usando o caractere til no final da linha:

 ESCREVER “Esta é uma mensagem de aviso ” + ~
“muito extensa”

Movimentação da tartaruga

PARAFRENTE (pf)

 PARAFRENTE 10 ; move para a frente em 10pt (1pt = 1/72 polegadas)
PARAFRENTE 10pt ; ver acima
PARAFRENTE 0.5pol ; move para a frente em 0.5 polegadas (1 polegada = 2.54 cm)
PARAFRENTE 1" ; ver acima
PF 1mm
PF 1cm

PARATRÁS (pt)

 PARATRÁS 10 ; move para trás 10pt

PARAESQUERDA (pe)

 PARAESQUERDA 90 ; gira 90 graus para a esquerda
PARAESQUERDA 90° ; ver acima
PE 3h ; ver acima (posição do relógio)
PE QUALQUER ; gira aleatoriamente

PARADIREITA (pd)

 PARADIREITA 90 ; gira 90 graus para a direita

USARNADA (un)

 USARNADA ; a tartaruga se movimenta sem desenhar

USARLÁPIS (ul)

 USARLÁPIS ; a tartaruga se movimenta desenhando

POSICIONAR (pos)

 POSICIONAR [0, 0] ; gira e move a tartaruga para o canto superior esquerdo
POSICIONAR TAMANHODAPÁGINA ; gira e move a tartaruga para o canto inferior direito
POSICIONAR [TAMANHODAPÁGINA[0], 0] ; gira e move a tartaruga para o canto superior direito
POSICIONAR QUALQUER ; gira e move a tartaruga aleatoriamente

MUDARDIREÇÃO (mdir)

 MUDARDIREÇÃO 0 ; gira para o norte
MUDARDIREÇÃO 12h ; ver acima
MUDARDIREÇÃO [0, 0] ; gira para o canto superior esquerdo
MUDARDIREÇÃO QUALQUER ; gira para uma direção aleatória

Outros comandos da tartaruga

DESAPARECERTAT (dt)

 DESAPARECERTAT ; oculta a tartaruga (até que se utilize o comando aparecertat)

APARECERTAT (at)

 APARECERTAT ; mostra a tartaruga

PARACENTRO (pc)

 PARACENTRO ; reinicia as configurações iniciais e a posição da tartaruga

TARTARUGA (tat)

 TARTARUGA ; remove os objetos de desenho do documento

PINTAR e FECHAR

 PINTAR ; fecha e pinta a forma de linha atual
FECHAR ; fecha a forma de linha atual ou une os pontos

Exemplo: pintar um triângulo regular:

 PARAFRENTE 50 PARAESQUERDA 120 PARAFRENTE 50 PINTAR

Exemplo: desenhar um triângulo regular:

 PARAFRENTE 50 PARAESQUERDA 120 PARAFRENTE 50 FECHAR

Configurações do lápis

MUDARESPESSURADOLÁPIS (mespla)

 MUDARESPESSURADOLÁPIS 100 ; a largura da linha é 100 pontos
MUDARESPESSURADOLÁPIS QUALQUER ; equivalente a MUDARESPESSURADOLÁPIS ALEATÓRIO 10

MUDARCORDOLÁPIS (mcorla)

 MUDARCORDOLÁPIS “vermelho” ; define a cor vermelha (pelo nome da cor; consulte constantes de cor)
MUDARCORDOLÁPIS [255, 255, 0] ; define a cor amarela (lista RGB)
MUDARCORDOLÁPIS 0xffff00 ; define a cor amarela (hexadecimal)
MUDARCORDOLÁPIS 0 ; define a cor preto (0x000000)
MUDARCORDOLÁPIS QUALQUER ; define aleatoriamente a cor
MUDARCORDOLÁPIS [5] ; define a cor vermelha (por identificador; consulte constantes de cor)
MUDARCORDOLÁPIS “invisível” ; define a cor transparente para formas sem contornos
MUDARCORDOLÁPIS “~vermelho” ; define um vermelho aleatório

MUDARTRANSPARÊNCIADOLÁPIS (mtrala)

 MUDARTRANSPARÊNCIADOLÁPIS 80 ; define a transparência da cor do lápis corrente para 80%

MUDARPONTADOLÁPIS (mponla)

 MUDARPONTADOLÁPIS “nenhum” ; sem ponta de linha extra (padrão)
MUDARPONTADOLÁPIS “arredondado” ; ponta de linha arredondada
MUDARPONTADOLÁPIS “quadrado” ; ponta de linha quadrada

MUDARCANTODALINHA (mcanli)

 MUDARCANTODALINHA “arredondado” ; canto de linha arredondado (padrão)
MUDARCANTODALINHA “pontudo” ; canto de linha pontudo
MUDARCANTODALINHA “cortado” ; canto de linha cortado
MUDARCANTODALINHA “nenhum” ; sem canto de linha

MUDARESTILODOLÁPIS (mestla)

 MUDARESTILODOLÁPIS “sólido” ; linha sólida (padrão)
MUDARESTILODOLÁPIS “pontilhado” ; linha pontilhada
MUDARESTILODOLÁPIS “tracejado” ; linha tracejada

; personalizar o padrão de acordo com seguintes argumentos:
; – número de pontos próximos
; – tamanho do ponto
; – número de traços próximos
; – tamanho do traço
; – distância entre pontos e traços
; – tipo (opcional):
; 0 = os pontos são retângulos (padrão)
; 2 = os pontos são quadrados (tamanho e distância são proporcionais à espessura do lápis)

MUDARESTILODOLÁPIS [3, 1mm, 2, 4mm, 2mm, 2] ; ...––...––...––

Configurações de pintura

MUDARCORDAPINTURA (mcorpi)

 MUDARCORDAPINTURA “azul” ; pinta com a cor azul - ver também MUDARCORDOLÁPIS
MUDARCORDAPINTURA “invisível” CÍRCULO 10 ; círculo sem pintura
MUDARCORDAPINTURA [“azul”, “vermelho”] ; gradiente entre vermelho e azul
MUDARCORDAPINTURA [[255, 255, 255], [255, 128, 0]] ; entre branco e laranja
MUDARCORDAPINTURA [“azul”, “vermelho”, 1, 0, 0] ; configura gradiente axial (com as configurações de rotação e borda requeridas), valores possíveis: 0-5 = gradientes linear, axial, radial, elíptico, quadrado e retangular
MUDARCORDAPINTURA [“vermelho”, “azul”, 0, 90, 20] ; linear com 20% de borda, rotacionado com 90 graus da direção atual da tartaruga
MUDARCORDAPINTURA [“vermelho”, “azul”, 0, 90, 20, 0, 0, 200, 50] ; intensidade de 200% a 50%
MUDARCORDAPINTURA [QUALQUER, QUALQUER, 2, 0, 0, 50, 50] ; gradiente radial com cores aleatórias e 50-50% de posições verticais e horizontais do centro

MUDARTRANSPARÊNCIADAPINTURA (mtrapi)

 MUDARTRANSPARÊNCIADAPINTURA 80 ; define a transparência da cor de pintura atual para 80%
MUDARTRANSPARÊNCIADAPINTURA [80] ; define gradiente de transparência linear de 80% a 0%
MUDARTRANSPARÊNCIADAPINTURA [80, 20] ; define gradiente de transparência linear de 80% a 20%
MUDARTRANSPARÊNCIADAPINTURA [80, 20, 1, 90] ; define gradiente de transparência axial rotacionado 90 graus da direção atual da tartaruga
MUDARTRANSPARÊNCIADAPINTURA [80, 20, 2, 0, 20, 50, 50] ; define gradiente de transparência radial de transparência 80% externa para 20% interna com 20% de borda e com 50-50% de posições horizontal e vertical do centro

MUDARESTILODAPINTURA (mestpi)

 MUDARESTILODAPINTURA 0 ; preencher sem hachurados (padrão)
MUDARESTILODAPINTURA 1 ; hachurados simples negros (horizontais)
MUDARESTILODAPINTURA 2 ; hachurados simples negros (45 graus)
MUDARESTILODAPINTURA 3 ; hachurados simples negros (-45 graus)
MUDARESTILODAPINTURA 4 ; hachurados simples negros (verticais)
MUDARESTILODAPINTURA 5 ; hachurados cruzados vermelhos (45 graus)
MUDARESTILODAPINTURA 6 ; hachurados cruzados vermelhos (0 graus)
MUDARESTILODAPINTURA 7 ; hachurados cruzados azuis (45 graus)
MUDARESTILODAPINTURA 8 ; hachurados cruzados azuis (0 graus)
MUDARESTILODAPINTURA 9 ; cruzado triplo azul
MUDARESTILODAPINTURA 10 ; hachurados simples negros e largos (45 graus)

; personalizar por uma lista com os seguintes argumentos:
; – estilo (1 = simples, 2 = duplo, 3 = hachurado triplo)
; – cor
; – distância
; – grau

MUDARESTILODAPINTURA [2, “verde”, 3pt, 15°] ; hachurados cruzados verdes (15 graus)

Desenho de objetos

CÍRCULO

 CÍRCULO 100 ; desenha um círculo (diâmetro = 100pt)

ELIPSE

 ELIPSE [50, 100] ; desenha uma elipse com diâmetro 50x100
ELIPSE [50, 100, 2h, 12h] ; desenha um setor elíptico (no sentido horário de 2h até 12h)
ELIPSE [50, 100, 2h, 12h, 2] ; desenha um segmento elíptico
ELIPSE [50, 100, 2h, 12h, 3] ; desenha um arco elíptico

QUADRADO

 QUADRADO 100 ; desenha um quadrado (tamanho = 100pt)

RETÂNGULO

 RETÂNGULO [50, 100] ; desenha um retângulo (50×100pt)
RETÂNGULO [50, 100, 10] ; desenha um retângulo com cantos arredondados

PONTO

 PONTO ; desenha um ponto com o tamanho e a cor do lápis

FECHAR pode unir os últimos pontos, e PINTAR pode pintar a forma definida pelos pontos. Por exemplo, é fácil desenhar uma estrela simples a partir do seu centro:

 USARNADA
REPETIR 5 [
PARAFRENTE 80
PONTO
PARATRÁS 80
PARADIREITA 36
PARAFRENTE 50
PONTO
PARATRÁS 50
PARADIREITA 120
] PINTAR

ROTULAR

 ROTULAR “texto” ; insere texto na posição da tartaruga
ROTULAR 'texto' ; ver acima
ROTULAR "texto ; ver acima (somente para palavras únicas)

TEXTO

 CÍRCULO 10 TEXTO “texto” ; define o texto contido no objeto de desenho atual

Configurações do tipo de letra

MUDARCORDALETRA (mcorle)

 MUDARCORDALETRA “verde” ; define a cor da letra

MUDARTIPODALETRA (mtiple)

 MUDARTIPODALETRA “Linux Libertine G” ; define o tipo de letra (família)
MUDARTIPODALETRA “Linux Libertine G:smcp=1” ; define também o tipo de capitalização (versaletes)
MUDARTIPODALETRA “Linux Libertine G:smcp=1&onum=1” ; versaletes + figuras antigas

MUDARTAMANHODALETRA (mtamle)

 MUDARTAMANHODALETRA 12 ; define 12pt

MUDARESPESSURADALETRA (mesple)

 MUDARESPESSURADALETRA “negrito” ; define a letra como negrito
MUDARESPESSURADALETRA “normal” ; define a letra como normal

MUDARESTILODALETRA (mestle)

 MUDARESTILODALETRA “itálico” ; define o texto como itálico
MUDARESTILODALETRA “normal” ; define o texto como normal

AGRUPAR (FIGURA, grp)

AGRUPAR serve para:

Agrupamento de formas

 ; AGRUPAR [ Comandos_LibreLogo ]
AGRUPAR [ PARAFRENTE 100 CÍRCULO 100 ] ; agrupa em forma de árvore

Pesquise também “Grupos” na ajuda do LibreOffice Writer.

 APRENDER arvore localizacao
USARNADA POSICIONAR localizacao MUDARDIREÇÃO 0 USARLÁPIS
AGRUPAR [ PARAFRENTE 100 CÍRCULO 100 ] ; agrupa na forma de árvore
FIM

AGRUPAR [ arvore [230, 400] arvore [300, 400] ] ; formas agrupadas em outra forma agrupada

Iniciar novas formas de linha

 AGRUPAR ; inicia uma nova forma de linha
PARAFRENTE 10 AGRUPAR PARAFRENTE 10 ; duas formas de linha

Salvar imagens SVG

 AGRUPAR “exemplo.svg” [ CÍRCULO 5 ] ; salva figura como um arquivo de imagem SVG na pasta do usuário
AGRUPAR “Desktop/exemplo.svg” [ PARAFRENTE 100 CÍRCULO 5 ] ; como acima, com caminho relativo
AGRUPAR “/home/user/exemplo.svg” [ CÍRCULO 5 ] ; caminho absoluto para Unix/Linux
AGRUPAR “C:/exemplo.svg” [ CÍRCULO 5 ] ; caminho absoluto para Windows

Salvar animações SVG/SMIL (desenhos com comandos ESPERAR)

 AGRUPAR “anima.svg” [ CÍRCULO 5 ESPERAR 1000 CÍRCULO 99 ] ; salva como uma animação SVG/SMIL (ver também ESPERAR)
AGRUPAR “anima2.svg” [ CÍRCULO 5 ESPERAR 1000 CÍRCULO 99 ESPERAR 2000 ] ; como acima, mas utilizar ESPERAR após último objeto resulta em um laço: após 2 segundos a animação SVG reinicia em navegadores compatíveis com SMIL

Consistência na margem esquerda

Use FIGURA para manter a consistência de posições e formas de linha na margem esquerda do Writer:

 AGRUPAR [ CÍRCULO 20 POSICIONAR [-100, 100] CÍRCULO 20 ]

Laços

REPETIR

 ; REPETIR número [ comandos ]

REPETIR 10 [ PARAFRENTE 10 PARAESQUERDA 45 CÍRCULO 10 ] ; repete 10 vezes
 ; número é opcional

REPETIR [ POSICIONAR QUALQUER ] ; laço infinito

CONTVEZES

Variável de laço (também presente nos laços PARA e ENQUANTO).

 REPETIR 100 [ PARAFRENTE CONTVEZES PARAESQUERDA 90 ]

PARA EM

Laço para os elementos de lista:

 PARA i EM [1, 5, 7, 9, 11] [
PARAFRENTE i
PARAESQUERDA 90
]

Laço para caracteres de uma sequência de caracteres:

 PARA i EM “texto” [
ROTULAR i
PARAFRENTE 10
]

ENQUANTO

 ENQUANTO VERDADEIRO [ POSICIONE QUALQUER ] ; laço sem fim
ENQUANTO CONTVEZES <= 10 [ PARAFRENTE 50 PARAESQUERDA 36 ] ; igual a REPEAT 10 [ ... ]

INTERROMPER

Interrompe o laço.

 REPETIR [ ; laço sem fim
POSICIONAR QUALQUER
SE CONTVEZES = 100 [ INTERROMPER ] ; equivalente a REPETIR 100 [ ... ]
]

CONTINUAR

Salta para a próxima iteração do laço.

 REPETIR 100 [
POSICIONAR QUALQUER
SE CONTVEZES % 2 == 0 [ CONTINUAR ]
CÍRCULO 10 ; desenha círculos a cada 2ª posição
]

Condições

SE

 ; SE condição [ bloco verdadeiro ]
; SE condição [ bloco verdadeiro ] [ bloco falso ]

SE a < 10 [ ESCREVER “Pequeno” ]
SE a < 10 [ ESCREVER “Pequeno” ] [ ESCREVER “Grande” ]

E, OU, NÃO

Operadores lógicos.

 SE a < 10 E NÃO a = 5 [ ESCREVER “0, 1, 2, 3, 4, 6, 7, 8 ou 9” ]
SE a < 10 E a != 5 [ ESCREVER “0, 1, 2, 3, 4, 6, 7, 8 ou 9” ] ; como acima

Sub-rotinas

APRENDER, FIM

Nova palavra (ou procedimento).

 APRENDER triangulo 
REPETIR 2 [ PARAFRENTE 100 PARADIREITA 120 ] PINTAR
FIM

REPETIR 10 [ triangulo USARNADA POSICIONAR QUALQUER USARLÁPIS ]

RETORNAR

Devolve/retorna o valor da função.

 APRENDER letraqualquer
RETORNAR ALEATÓRIO “qwertzuiopasdfghjklyxcvbnm”
FIM

ESCREVER letraqualquer + letraqualquer + letraqualquer ; imprime aleatoriamente 3 letras da sequência

PARAR

Sair do procedimento.

 APRENDER exemplo numero
SE numero < 0 [ PARAR ]
ESCREVER RAIZ numero ; imprime a raiz quadrada
]

exemplo 100
exemplo -1 ; sem resultados nem erros
exemplo 25

Variáveis padrão

QUALQUER

Valor aleatório padrão para cores etc.

 MUDARCORDOLÁPIS QUALQUER ; cor aleatória do lápis

VERDADEIRO

Valor lógico.

 ENQUANTO VERDADEIRO [ POSICIONAR QUALQUER ] ; laço infinito
ESCREVER VERDADEIRO ; imprime verdadeiro

FALSO

Valor lógico.

 ENQUANTO NÃO FALSO [ POSICIONAR QUALQUER ] ; laço infinito
ESCREVER FALSO ; imprime falso

TAMANHODAPÁGINA (tampág)

 ESCREVER TAMANHODAPÁGINA ; imprime lista com tamanho da página em pontos, por ex. [595.30, 841.89]

PI/π

 ESCREVER PI ; imprime 3.14159265359

Entrada/Saída

ESCREVER (esc)

 ESCREVER “texto” ; imprime “texto” em uma caixa de diálogo
ESCREVER 5 + 10 ; imprime 15

LER

 ESCREVER LER “Valor de entrada?” ; solicita e imprime uma cadeia de caracteres em uma caixa de diálogo
ESCREVER REAL (LER “Primeiro número?”) + REAL (LER “Segundo número?”) ; calculadora básica

ESPERAR

 ESPERAR 1000 ; espera 1000 ms (1 segundo)

GLOBAL

Definir variáveis globais usadas em procedimentos.

 GLOBAL sobre
sobre = “LibreLogo”

APRENDER exemplo
ESCREVER sobre
GLOBAL sobre ; se quisermos usar e adicionar um novo valor
sobre = “novo valor da variável global”
FIM

exemplo
ESCREVER sobre

Funções

ALEATÓRIO

 ESCREVER ALEATÓRIO 100 ; número real aleatório (0 <= x < 100)
ESCREVER ALEATÓRIO “texto” ; letra aleatória de “texto”
ESCREVER ALEATÓRIO [1, 2] ; elemento aleatório da lista (1 ou 2)

INT

 ESCREVER INT 3.8 ; imprime 3 (parte inteira de 3.8)
ESCREVER INT ALEATÓRIO 100 ; número inteiro aleatório (0 <= x < 100)
ESCREVER INT “7” ; converte o parâmetro da cadeia para inteiro

REAL

 ; converte o parâmetro da cadeia de texto num número real
ESCREVER 2 * REAL “5.5” ; imprime 11.0

STR

 ; converte o parâmetro numérico numa cadeia de texto
ESCREVER “Resultado: ” + STR 5 ; imprime “Resultado: 5”
ESCREVER 10 * STR 5 ; imprime 5555555555

RAIZ

 ESCREVER RAIZ 100 ; imprime 10, a raiz quadrada de 100

SEN

 ESCREVER SEN 90 * PI/180 ; imprime 1.0 (o seno de 90° em radianos)

COS

 ESCREVER COS 0 * PI/180 ; imprime 1.0 (o cosseno de 0° em radianos)

LOG10

 ESCREVER LOG10 100 ; imprime 2.0 (logaritmo de 100 na base 10)

ARRED

 ESCREVER ARRED 3.8 ; imprime 4 (arredondamento de 3.8)
ESCREVER ARRED ALEATÓRIO 100 ; número inteiro aleatório (0 <= x <= 100)

ABS

 ESCREVER ABS -10 ; imprime 10, o valor absoluto de -10

CONTAGEM

 ESCREVER CONTAGEM “texto” ; imprime 5, o número de caracteres em “texto”
ESCREVER CONTAGEM [1, 2, 3] ; imprime 3, o tamanho da lista

CONJUNTO

 ; Converte a lista para um conjunto Python
ESCREVER CONJUNTO [4, 5, 6, 6] ; imprime {4, 5, 6}
ESCREVER CONJUNTO [4, 5, 6, 6] | CONJUNTO [4, 1, 9] ; imprime {1, 4, 5, 6, 9}, união
ESCREVER CONJUNTO [4, 5, 6, 6] & CONJUNTO [4, 1, 9] ; imprime {4}, interseção
ESCREVER CONJUNTO ([4, 5, 6, 6]) - CONJUNTO [4, 1, 9] ; imprime {5, 6}, diferença
ESCREVER CONJUNTO [4, 5, 6, 6] ^ CONJUNTO [4, 1, 9] ; imprime {1, 5, 6, 9}, diferença simétrica

INTERVALO

 ; geração de listas ao estilo do Python
ESCREVER INTERVALO 10 ; imprime [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
ESCREVER INTERVALO 3 10 ; imprime [3, 4, 5, 6, 7, 8, 9]
ESCREVER INTERVALO 3 10 3 ; imprime [3, 6, 9]

PARA i EM INTERVALO 10 50 10 [ ; laço para [10, 20, 30, 40]
PARAFRENTE i
PARAESQUERDA 90
]

LISTA

 ; remover os elementos repetidos de uma lista utilizando conversão de conjunto e de lista
ESCREVER LISTA (CONJUNTO [1, 3, 5, 5, 2, 1]) ; imprime [1, 3, 5, 2]

TUPLA

Conversão para tupla do Python (lista não-modificável)

 ESCREVER TUPLA [4, 5]

ORDENADO

Retorna uma lista ordenada.

 ESCREVER ORDENADO [5, 1, 3, 4] ; imprime [1, 3, 4, 5]

SUBST

Substituir sequências de caracteres usando padrões regex (expressões regulares).

 ESCREVER SUBST (“t”, “T”, “texto”) ; imprime “Texto”, substituindo “t” por “T”
ESCREVER SUBST (“(.)”, “\\1\\1”, “texto”) ; imprime “tteexxttoo”, duplicando todos os caracteres

PESQUISA

Procurar padrões de sequências de caracteres usando padrões regex.

 SE PESQUISA (“\w”, word) [ ESCREVER “Letra na palavra.” ]

LOCALIZATUDO

Localizar todas as sequências de caracteres no texto de entrada, coincidentes com o padrão regex dado.

 ESCREVER LOCALIZATUDO(“\w+”, “Cães, gatos.”) ; imprime [“Cães”, “gatos”], a lista das palavras.

MÍNIMO

 ESCREVER MÍNIMO [1, 2, 3] ; imprime 1, o menor elemento da lista

MÁXIMO

 ESCREVER MÁXIMO [1, 2, 3] ; imprime 3, o maior elemento da lista

Constantes de cor

 MUDARCORDOLÁPIS “PRATA” ; define a cor pelo nome
MUDARCORDOLÁPIS [1] ; define a cor por identificador
MUDARCORDOLÁPIS “~PRATA” ; escolhe uma cor prateada aleatória

Identificador

Nome

0

PRETO

1

PRATA

2

CINZA

3

BRANCO

4

CASTANHO

5

VERMELHO

6

ROXO

7

MAGENTA

8

VERDE

9

LIMA

10

OLIVA

11

AMARELO

12

MARINHO

13

AZUL

14

TURQUESA

15

CIANO

16

ROSA

17

TOMATE

18

LARANJA

19

OURO

20

VIOLETA

21

CELESTE

22

CHOCOLATE

23

MARROM

24

INVISÍVEL