Copyright © 2004 Cies Breijs
É dada permissão para copiar, distribuir e/ou modificar este documento ao abrigo da GNU Free Documentation License, Versão 1.1 ou de uma versão mais recente publicada pela Free Software Foundation; sem Secções Invariantes, sem Textos de Capa Frontal, e sem Textos de Capa Traseira. Uma cópia desta licença está incluida na secção intitulada "GNU Free Documentation License".
O KTurtle é um ambiente de programação educativo que usa a linguagem de programação Logo. A qualidade única do LOGO é que os comandos de programação são traduzidos para a língua do 'programador', para que ele possa programar na sua língua nativa.
Índice
Lista de Tabelas
O KTurtle é um ambiente educativo de programação utilizando a linguagem de programação Logo. Ele tenta manter a programação tão acessível quanto possível. Isto torna o KTurtle adequado para ensinar às crianças matemática, geometria e... programação. Os comandos usados para programar são do estilo da linguagem de programação Logo. Uma funcionalidade única do Logo é que os comandos são normalmente traduzidos para a língua falada pelo programador.
O KTurtle tem o nome com base na 'tartaruga' que desempenha um papel central no ambiente de programação. O utilizador programa a tartaruga, usando os comandos do Logo, para desenhar uma imagem na área de desenho.
A primeira versão da linguagem de programação Logo foi criada por Seymour Papert do Laboratório de Inteligência Artificial do MIT em 1967 como uma alternativa à linguagem de programação LISP. Desde então, foram lançadas várias versões do Logo. Em 1980, o Logo foi ganhando adeptos, com versões para o MSX, Commodore, Atari e sistemas IBM PC. Estas versões eram principalmente para fins educativos. A LCSI lançou o Mac®Logo em 1985 como uma ferramenta para programadores profissionais, mas nunca teve grande sucesso. O MIT ainda mantém um 'site' sobre Logo que poderá ser acedido em http://el.media.mit.edu/logo-foundation/.
Hoje em dia existem várias versões do Logo por aí, as quais poderão ser encontradas no 'site' de Logo do MIT e com uma pequena pesquisa no Google. Esta versão do Logo (KTurtle) só se foca nas qualidades de educação da linguagem de programação e não se tentará adequar às necessidades profissionais dos programadores.
O KTurtle tem algumas funcionalidades giras que tornam a introdução à programação uma leve brisa. Veja aqui alguns dos detalhes das funcionalidades do KTurtle:
Um interpretador de Logo integrado (sem dependências extra) que usa ficheiros em XML para as traduções dos comandos, suporta as funções definidas pelo utilizador e a mudança dinâmica de tipos.
A execução pode ser tornada mais lenta, pausada ou interrompida em qualquer altura.
Um editor poderoso para os comandos de Logo com um realce de sintaxe intuitivo, com numeração de linhas, entre outras coisas.
A área de desenho pode ser gravada como uma imagem ou impressa.
A área de desenho tem um modo de envolvência (activo por omissão), para que a tartaruga não se perca assim tão facilmente.
A ajuda de contexto para todos os comandos do Logo, basta para tal carregar em F2.
Os comandos de Logo são completamente aptos para tradução (de momento só é suportado o Português do Brasil, o Inglês, o Holandês e o Francês, o Esloveno, o Sérvio (Cirílico e Latim), Espanhol e Sueco).
Uma janela de erros que associa as mensagens de erro aos erros propriamente ditos no programa.
Uma terminologia de programação simplificada.
Modo de ecrã completo.
Vários programas em Logo de exemplo integrados facilitam o início.
A janela principal do KTurtle tem duas componentes principais: o editor de código (3) à esquerda, onde você escreve os comandos de Logo e a área de desenho (4) à direita, onde as instruções são visualizadas. A área de desenho é a área de recreio da tartaruga; é na área de desenho que a tartaruga se move e desenha. Os três outros locais da janela principal são: o menu (1) onde todas as acções podem ser acedidas, a barra de ferramentas (4) que lhe permite seleccionar rapidamente as acções mais utilizadas e a barra de estado (5) onde você irá encontrar alguma informação sobre o estado do KTurtle.
No editor de código, você poderá escrever os comandos de Logo. Ele tem todas as funcionalidades que você estaria à espera num editor moderno. A maioria das suas funcionalidades são encontradas nos menus Editar e Ferramentas. O editor de código pode ser acoplado a qualquer um dos lados da janela principal ou poderá ser destacado e colocado em qualquer local do seu ecrã.
Você tem várias formas de obter algum código no editor. A forma mais fácil é usar um exemplo já feito. Você escolhe o -> no menu Ficheiro, onde poderá carregar num ficheiro. O nome do ficheiro dir-lhe-á algo sobre o que é o exemplo (por exemplo, o 'square.logo' vai desenhar um quadrado ('square'). O ficheiro que escolher será aberto no editor de código, você poderá ir então a -> para correr o código se o desejar.
Você poderá abrir os ficheiros de Logo se escolher ->.
A terceira forma é escrever directamente o seu código no editor ou copiar/colar algum código deste guia de utilizador.
A posição do cursor é indicada na barra de estado à direita, com o número da Linha e da Coluna.
A área de desenho é a área onde os comandos são visualizados, ou seja, onde estes “desenham” uma imagem. Por outras palavras, é o espaço de recreio da tartaruga. Depois de introduzir algum código no editor de código e de o executar com ->, duas coisas poderão acontecer: ou o código executa na perfeição e você poderá ver algo a mudar na área de desenho, ou você tem um erro no seu código e existirá uma mensagem que lhe dirá qual o erro que você cometeu.
Esta mensagem devê-lo-á ajudar a resolver o erro.
A imagem que é desenhada pode ser gravada num ficheiro (usando o ->) ou impressa (usando o ->).
No menu, você irá encontrar todas as acções do KTurtle. Estas estão nos seguintes grupos: , , , , e . Esta secção descreve-as a todas.
Mostra a pasta com os programas de exemplo do Logo. Os exemplos deverão estar na sua língua favorita, a qual poderá escolher em ->.
Apresenta uma lista com as velocidades de execução possíveis, consistindo em: Velocidade Completa, Lento, Mais Lento e Lentíssimo. Quando a velocidade é igual a 'Velocidade Completa' (por omissão), poderá não conseguir ver o que se está a passar. Em alguns dos casos este comportamento poderá ser o desejado, mas noutros casos poder-se-á querer ter uma ideia da execução. No último caso, poderá querer configurar a velocidade da execução como 'Lento', 'Mais Lento' e 'Lentíssimo'. Quando um dos modos lentos for seleccionado, a posição actual de execução será mostrada no editor.
Coloca a execução em pausa. Esta acção só fica activa quando os comandos estiverem de facto a ser executados.
Pára a execução; esta acção só fica activa quando os comandos estiverem de facto a ser executados.
Esta acção abre o extractor de cores. Com este extractor, você poderá seleccionar facilmente um código de cores e inseri-lo no editor de código.
Esta acção “indenta” (adiciona espaços em branco) as linhas que estão seleccionadas. Quando a 'indentação' é usada convenientemente, isto poderá tornar o código muito mais fácil de ler. Todos os exemplos usam indentação, por isso veja-os, por favor.
Esta acção “remove a indentação” (remove os espaços em branco no início de) as linhas que estão seleccionadas.
Esta acção limpa a “indentação” (remove todos os espaços em branco no início de) as linhas que estão seleccionadas.
Esta acção adiciona caracteres de comentário (#) ao início das linhas que são seleccionadas. As linhas que começam com um carácter de comentário são ignoradas quando o código é executado. Os comentários permitem ao programador explicar um pouco o seu código ou podem ser usadas para evitar temporariamente que um dado pedaço de código seja executado.
Depois de activar esta acção, a seta do cursor irá mudar para uma “seta com ponto de interrogação”. Este novo tipo de seta é usado para carregar em partes da janela principal do KTurtle, aparecerá uma descrição da componente em particular.
Esta é uma função bastante útil; ela fornece ajuda acerca do código sobre o qual o cursor se encontra. Por isso, por exemplo, você poderá usar o comando print
no seu código, e poderá querer ler para saber o que o manual diz sobre este comando. Você poderá mover o cursor para cima do comando print
e carregar em F2. O manual irá então mostrar toda a informação sobre o comando print
.
Esta função é muito importante durante a aprendizagem da programação.
Use isto para comunicar um problema no KTurtle com os programadores. Estes relatórios podem ser usados para tornar as versões futuras do KTurtle melhores.
Aqui você poderá aceder rapidamente às funções mais usadas. Por omissão, você irá encontrar aqui todos os comandos mais úteis, terminando nos ícones Executar os Comandos e o Parar a Execução.
Você poderá configurar a barra de ferramentas se usar o menu ->->
Na barra de estado você poderá saber o estado do KTurtle. Do lado esquerdo, dá o resultado sobre a última acção. Do lado direito, você encontra a localização actual do cursor (os números da linha e da coluna). A meio da barra de estado, é indicada a língua usada para os comandos.
Quando você inicia o KTurtle você irá ver algo semelhante a isto:
Você já deve ter reparado que a tartaruga está no meio da área de desenho: você está agora prestes a aprender como controlá-la, usando os comandos no editor de código.
Vamos começar por pôr a tartaruga a andar. A nossa tartaruga tem 3 tipos de movimentos: (1) pode ir para a frente e para trás, (2) pode virar à esquerda ou à direita e (3) poderá ir directamente para uma posição do ecrã. Tente isto, por exemplo:
forward 100 turnleft 90Escreva ou copie e cole o código no editor e execute-o (usando o ->) para ver o resultado.
Quando tiver escrito e executado os comandos acima no editor de código, você irá reparar em uma ou mais das seguintes coisas:
Que — depois de executar os comandos — a tartaruga vai-se movendo, desenhar uma linha e depois dá um quarto de volta para a esquerda. Isto acontece porque você usou os comandos forward
e turnleft
.
Que a cor do código mudou à medida que o foi escrevendo; esta funcionalidade chama-se realce intuitivo — os diferentes tipos de comandos são realçados de forma diferente. Isto torna a leitura de grandes blocos de código mais fácil.
Que a tartaruga desenha uma linha preta fina.
Talvez tenha obtido uma mensagem de erro. Isto poderá simplesmente significar duas coisas: você poderá ter cometido um erro ao copiar os comandos, ou você precisa de definir a língua correcta para os comandos de Logo (o que você pode fazer escolhendo -> na secção Língua).
Você irá da mesma forma perceber que o forward 100
mandou a tartaruga andar em frente, deixando uma linha, e que o turnleft 90
disse à tartaruga virar 90 graus à esquerda.
Por favor, veja as seguintes referências para o manual para uma explicação completa dos comandos introduzidos: forward
, backward
, turnleft
e turnright
.
O primeiro exemplo foi muito simples, por isso vamos continuar!
canvassize 200,200 canvascolor 0,0,0 pencolor 255,0,0 penwidth 5 clear go 20,20 direction 135 forward 200 turnleft 135 forward 100 turnleft 135 forward 141 turnleft 135 forward 100 turnleft 45 go 40, 100Mais uma vez, você deverá escrever ou copiar e colar o código para o editor ou abrir o ficheiro
arrow.logo
na pasta e executá-lo (usando a opção ->) para ver o resultado. Nos próximos exemplos, você já é suposto saber a mecânica do assunto.Você poderá já ter notado que este segundo exemplo usa bastante mais código. Você poderá ter visto também um conjunto de comandos novos. Aqui está uma breve explicação de todos os comandos novos:
O canvassize 200,200
configura a largura e a altura da área de desenho para 200 pontos. A largura e a altura são iguais em tamanho, o que significa que a área de desenho deverá ser agora um quadrado.
O canvascolor 0,0,0
coloca a área de desenho a preto. O 0,0,0
é uma combinação RGB onde todos os valores ficam iguais a 0
, o que corresponde a preto.
O pencolor 255,0,0
coloca a cor do traço a vermelho. O 255,0,0
é uma combinação RGB em que só o valor do 'vermelho' fica igual a 255
enquanto que os outros (verde e azul) ficam a 0
, o que resulta num tom claro de vermelho.
Se não compreender os valores das cores, tente por favor ler o glossário sobre as combinações RGB
O penwidth 5
configura a espessura (ou tamanho) do traço a 5
pontos. A partir de agora, todas as linhas que a tartaruga desenhar irão ter uma espessura de 5
pontos, até que se mude o penwidth
para outra coisa qualquer.
O clear
limpa a área de desenho, e é tudo o que faz.
O go 20,20
manda a tartaruga ir para um dado lugar da área de desenho. A contar do canto superior esquerdo, este lugar fica a 20 pontos a contar da esquerda e a 20 pontos da parte superior. Lembre-se que, ao usar o comando go
, a tartaruga não irá desenhar uma linha.
O direction 135
define a direcção da tartaruga. O turnleft
e o turnright
mudam o ângulo da tartaruga a partir da direcção actual dela. O direction
muda o ângulo da tartaruga a partir do zero e, como tal, não é relativo à posição anterior da tartaruga.
Depois do comando de direcção, segue-se um conjunto de comandos forward
e turnleft
. Estes comandos fazem, de facto, o desenho.
Por fim, é usado outro comando go
para mover a tartaruga para o lado.
Certifique-se que segue as referências. Estas explicam cada comando em mais detalhe.
Esta é a referência para o Logo do KTurtle. Neste capítulo iremos tocar brevemente em todos os tipos de instruções diferentes. Depois, serão explicados os comandos, um por um. De seguida, serão explicados os contentores, a matemática, as questões e os controladores de execução. Por último, ser-lhe-á mostrado como criar os seus próprios comandos com o learn.
Como em qualquer linguagem, o LOGO tem diferentes tipos de palavras e símbolos. Aqui, será explicada a diferença entre os vários tipos.
Ao usar os comandos, você diz à tartaruga ou ao KTurtle para fazer algo. Alguns comandos precisam de dados introduzidos, enquanto outros trazem resultados.
# o 'forward' é um comando que necessita de dados de entrada, neste caso o número 100: forward 100
Para uma ideia geral de todos os comandos que o KTurtle suporta, venha aqui.
O mais provável é que você já conheça alguma coisa sobre os números. A forma como estes são usados no KTurtle não é muito diferente da língua falada ou da matemática.
Temos então os números conhecidos por naturais: 0
, 1
, 2
, 3
, 4
, 5
, etc. Os números negativos: -1
, -2
, -3
, etc. Finalmente, os números decimais ou fraccionários, como por exemplo: 0.1
, 3.14
, 33.3333
, -5.05
, -1.0
.
Os números podem ser usados em cálculos matemáticos e perguntas. Também podem ser colocados em contentores.
Os números ficam realçados a azul no editor de código.
Primeiro um exemplo:
print "Olá, sou uma cadeia de caracteres."Neste exemplo, o
print
é um comando, enquanto o "Olá, sou uma cadeia de caracteres."
é, de facto, uma cadeia de caracteres. Estas começam e terminam com o símbolo "
; com estes símbolos, o KTurtle sabe que é uma cadeia de caracteres.As cadeias de caracteres podem ser colocadas em contentores. Porém, não podem ser usadas em cálculos matemáticos nem em questões.
As cadeias de caracteres ficam realçadas a vermelho escura no editor de código.
Ao usar a linguagem de programação Logo, pode criar coisas novas. Se criar um programa irá necessitar normalmente de contentores e, em alguns casos, do learn para criar novos comandos. Ao criar um contentor ou um novo comando com o learn, terá de indicar um nome.
Poderá escolher qualquer nome, desde que este não tenha já algum significado. Por exemplo, não poderá chamar a um contentor forward, dado que esse nome já é usado para um comando e, como tal, já tem um significado.
# Aqui o forward é usado como contentor, mas já tem um significado # pelo que irá produzir um erro: forward = 20 # isto funciona: forward 20Os nomes só poderão conter letras, números e sublinhados (_). De qualquer forma, têm de começar por uma letra.
Por favor, leia a documentação sobre os contentores e o comando learn para uma melhor explicação e mais exemplos.
As atribuições são feitas com o símbolo =
. Nas linguagens de programação é melhor ler o =
simples não como um 'é igual a' mas sim como um 'fica igual a'. O termo 'é igual a' é mais apropriado para o ==
, que é uma pergunta.
As atribuições são usadas normalmente por duas razões, (1) para adicionar conteúdo aos contentores e (2) para modificar o conteúdo de um contentor. Por exemplo:
x = 10 # o contentor 'x' contém agora o número 10 W = "A minha idade é: " # o contentor W contém agora o texto "A minha idade: " # isto imprime o conteúdo dos contentores 'W' e 'x' na área de desenho print W + x
Para mais exemplos, veja a secção que explica os contentores.
O KTurtle suporta todos os símbolos matemáticos básicos: a adição (+
), a subtracção (-
), a multiplicação (*
), a divisão (/
) e os parêntesis (
e )
.
Para uma explicação completa e mais exemplos, veja a secção de matemática.
Podem ser feitas algumas perguntas simples, onde nesse caso a resposta será 'true' (verdadeira) ou 'false' (falsa).
A utilização das perguntas é explicada de forma extensa na secção de perguntas.
As perguntas podem ser coladas em conjunto com o que se denomina por 'cola das perguntas'. As palavras de colagem são o and
(e), o or
(ou) e uma palavra especial: a not
(não).
A utilização da colagem de perguntas é explicada na secção de Colagem de Perguntas.
Os comentários são linhas que começam por um #
. Por exemplo:
# isto é um comentário! print "isto não é um comentário" # a linha anterior não é um comentário, mas a próxima é: # print "isto não é um comentário"Nas linhas comentadas, poderão ser adicionadas notas ao código, para nós ou para outra pessoa ler. Os comentários são usados para: (1) adicionar uma pequena descrição ao programa, (2) para explicar como é que funciona um determinado excerto de código se este for ligeiramente complicado e (3) para 'desactivar' linhas de código que deverão ser (temporariamente) ignoradas (veja a última linha do exemplo).
As linhas comentadas ficam realçadas com um amarelo escuro no editor de código.
Ao usar os comandos, você diz à tartaruga ou ao KTurtle para fazer algo. Alguns comandos precisam de dados introduzidos, enquanto outros trazem resultados. Nesta secção iremos explicar todos os comandos que podem ser usados no KTurtle. Repare que todos os comandos incorporados ficam realçados a verde escuro no editor de código, para que possa ajudar a distingui-los.
Existem vários comandos para mover a tartaruga pelo ecrã.
forward XO
forward
move a tartaruga para a frente X pixels. Quando o traço está em baixo, a tartaruga irá deixar um rasto. O forward
pode ser abreviado para fw
backward XO
backward
move a tartaruga para trás X pixels. Quando o traço está em baixo, a tartaruga irá deixar um rasto. O backward
pode ser abreviado para bw
.turnleft XO
turnleft
diz à tartaruga para se virar X graus para a esquerda. O turnleft
pode ser abreviado para tl
.turnright XO
turnright
diz à tartaruga para se virar X graus para a direita. O turnright
pode ser abreviado para tr
.direction XO
direction
configura a direcção da tartaruga para um ângulo de X graus a contar do zero, e isto não é relativo à direcção anterior da tartaruga. O direction
pode ser abreviado para dir
.gox XAo usar o comando
gox
, a tartaruga irá mover-se X pixels a partir da esquerda da área de desenho, mantendo à mesma a sua altura.goy YAo usar o comando
goy
, a tartaruga irá mover-se Y pixels a partir do topo da área de desenho, mantendo à mesma a sua distância ao lado esquerdo da área de desenho.A tartaruga tem um traço e vai desenhando uma linha à medida que a tartaruga se move. Existem alguns comandos para controlar o traço. Nesta secção iremos explicar estes comandos.
penupO
penup
levanta o traço da área de desenho. Quando o traço está “em cima”, não é desenhada nenhuma linha à medida que a tartaruga se move. Veja também o pendown
. O penup
pode ser abreviado para pu
.pendownO
pendown
carrega no traço para baixo na área de desenho. Quando o traço está “em baixo”, é desenhada uma linha à medida que a tartaruga se move. Veja também o penup
. O pendown
pode ser abreviado para pd
.penwidth XO
penwidth
configura a espessura do traço para X pixels. O penwidth
pode ser abreviado para pw
.pencolor R,G,BO
pencolor
configura a cor do traço. O pencolor
recebe uma combinação de RGB como parâmetro. O pencolor
pode ser abreviado para pc
.Existem vários comandos para controlar a área de desenho.
canvascolor R,G,BO
canvascolor
define a cor da área de desenho. O canvascolor
recebe uma combinação RGB como parâmetro. O canvascolor
pode ser abreviado para cc
.wraponCom o comando
wrapon
você poderá activar a envolvência para a área de desenho. Por favor veja o glossário para saber o que é a envolvência.wrapoffCom o comando
wrapoff
você poderá desactivar a envolvência para a área de desenho. Isto significa que a tartaruga poder-se-á mover para fora da área de desenho e “perder-se”. Por favor veja o glossário se quiser saber o que é a envolvência.Existem dois comandos para limpar a área de desenho, depois de você ter deixado tudo confuso.
clearCom o
clear
, você poderá limpar todos os desenhos da área respectiva. Tudo o resto permanece igual: a posição e o ângulo da tartaruga, a cor da área de trabalho, a visibilidade da tartaruga e o tamanho da área de desenho. O clear
pode ser abreviado para cr
.resetO
reset
limpa tudo de forma mais abrangente que o comando clear
. Depois de um comando reset
, tudo fica tal e qual estava quando você iniciou o KTurtle. A tartaruga é posicionada no meio do ecrã, a cor da área de desenho é branca e a tartaruga irá desenhar uma linha preta na área de desenho.Muitas das pessoas não sabem o que são as imagens móveis ('sprites'), daí uma breve explicação: as imagens móveis são pequenas imagens que podem percorrer o ecrã (para mais informações, veja o glossário sobre as imagens móveis).
A seguir você irá encontrar uma apresentação completa de todos os comandos que lidam com imagens móveis.
[A versão actual do KTurtle não suporta ainda o uso de imagens móveis que não apenas a tartaruga. Nas versões futuras, você poderá mudar a tartaruga para outra coisa ao seu gosto]
showO
show
torna a tartaruga visível de novo depois de ter ficado escondida. O show
pode ser abreviado para ss
.A resposta é: “sim”. A tartaruga sabe escrever e pode escrever tudo o que lhe disser para escrever.
print XO comando
print
é usado para dizer à tartaruga para escrever algo na área de desenho. O print
recebe números e texto como parâmetros. Você poderá executar o print
para vários parâmetros com o sinal “+”. Veja aqui um pequeno exemplo: ano = 2004 autor = "Ze" print "O " + autor + " iniciou o projecto do KTurtle em " + ano + " e ainda continua a gostar de trabalhar nele!"
fontsize XO
fontsize
configura o tamanho da letra que é usado pelo print
. O fontsize
recebe um parâmetros que deverá ser um número. O tamanho é definido em pixels.Existe um comando que lança os dados para si, que se chama random
e é muito útil para alguns resultados inesperados.
random X,YO
random
é um comando que recebe parâmetros e devolve resultados. Como parâmetros são necessários dois números, em que o primeiro define o resultado mínimo (X) e o segundo o máximo (Y). O resultado é um número escolhido aleatoriamente que é maior ou igual ao mínimo e menor ou igual ao máximo. Aqui está um pequeno exemplo: repeat 500 [ x = random 1,20 forward x turnleft 10 - x ]Com o comando 'random', você poderá adicionar um pouco de confusão ao seu programa.
Uma janela poderá pedir alguma alguma reacção em especial ou a introdução de determinados dados. O KTurtle tem dois comandos para janelas, nomeadamente o message
e o inputwindow
message XO comando
message
recebe uma cadeia de caracteres à entrada. Mostra então uma janela que contém o texto da cadeia de caracteres. ano = 2004 autor = "Ze" print "O " + autor + " iniciou o projecto do KTurtle em " + ano + " e ainda continua a gostar de trabalhar nele!"
inputwindow XO
inputwindow
recebe uma cadeia de caracteres à entrada. Mostra uma janela que contém o texto da cadeia de caracteres, tal como acontece no message. Contudo, para além disso, também mostra um campo de texto na janela. Através deste campo, o utilizador poderá introduzir um número ou uma cadeia de caracteres que poderá ser guardada num contentor. Por exemplo in = inputwindow "Que idade tem?" out = 2003 - in print "Em 2003, você tinha " + out + " anos a dada altura."Quando um utilizador cancelar a janela ou não introduzir nada de todo, o contentor fica vazio.
Os contentores são letras ou palavras que podem ser usadas pelo programador para guardar algum número ou algum texto. Os contentores que contêm um número chamam-se variáveis, enquanto que os que contêm texto chamam-se cadeias de caracteres.
Os contentores que não são usados não contêm nada. Por exemplo, um:
print NIsto não irá imprimir nada. Se tentar fazer operações matemáticas com contentores vazios, irá obter erros.
Vamos começar com um exemplo:
x = 3 print xNa primeira linha, a letra
x
passou a ser uma variável (um contentor de números). Como poderá ver, o valor da variável x
passou a 3. Na segunda linha, o valor é impresso.Lembre-se que, se quisesse imprimir um “x”, então deveria ser escrito
print "x"
Isso foi fácil, mas agora há um exemplo um pouco mais difícil:
A = 2004 B = 25 C = A + B # o próximo comando imprime "2029" print C backward 30 # o próximo comando imprime "2004 mais 25" print A + " mais " + B backward 30 # o próximo comando imprime "1979" print A - BNas duas primeiras linhas, as variáveis
A
e B
são configuradas como sendo iguais a 2004 e 25. Na terceira linha, a variável C
fica igual a A + B
, o que dá 2029. O resto do exemplo consiste em 3 comandos print
com backward 30
no meio. O backward 30
está lá para garantir que cada resultado fica numa linha diferente. Neste exemplo, você vê também que as variáveis podem ser usadas nos cálculos matemáticos.No código do programa, o texto normal é iniciado e termina normalmente com aspas. Como já foi visto:
print "Olá programador!"O texto fica delimitado com as aspas. Estes pedaços de texto normal são chamados então de cadeias de caracteres.
As cadeias de caracteres são bastante parecidas com as variáveis. A maior diferença é que as cadeias de caracteres não podem ser usadas em cálculos matemáticos e perguntas. Um exemplo da utilização das cadeias de caracteres:
x = "Olá " nome = inputwindow "por favor indique o seu nome..." print x + nome + ", como é que está?Na segunda linha, a cadeia de caracteres
x
fica igual a “Olá ”. Na segunda linha, a cadeia de caracteres nome
é configurada como o resultado do comando inputwindow
. Na terceira linha, o programa imprime uma composição de três cadeias de caracteres na área de desenho.Este programa pede-lhe para introduzir o seu nome. Quando você, por exemplo, introduzir o nome “Zé”, o programa irá imprimir “Olá Zé, como é que está?”. Lembre-se que o sinal de mais (+) é o único símbolo matemático que você poderá usar com as cadeias de caracteres.
Sim, o KTurtle sabe fazer contas para si. Você poderá somar (+), subtrair (-), multiplicar (*) e dividir (/). Aqui está um exemplo no qual iremos usar todas as operações:
a = 20 - 5 b = 15 * 2 c = 30 / 30 d = 1 + 1 print "a: "+a+", b: "+b+", c: "+c+", d: "+dSerá que sabe o valor de 'a', 'b', 'c' e 'd'? Repare por favor no uso do símbolo
=
de atribuição.Se você somente queria fazer um cálculo simples, você poderá fazer algo semelhante a isto:
print 2004-12
Agora, um exemplo com parêntesis:
print ( ( 20 - 5 ) * 2 / 30 ) + 1O que estiver entre parêntesis será calculado em primeiro lugar. Neste exemplo, o 20-5 será calculado, depois será multiplicado por 2, dividido por 30 e depois é adicionado 1 (o que dá 2).
O if
e o while
são controladores de execução que iremos discutir na próxima secção. Nesta secção iremos usar o comando if
para explicar as perguntas.
Um exemplo simples de perguntas:
x = 6 if x > 5 [ print "olá" ]Neste exemplo, a pergunta é
x > 5
, se a resposta a esta pergunta for “true” (verdadeira), o código entre parêntesis rectos será executado. As perguntas são uma parte importante da programação e são usadas normalmente em conjunto com os controladores de execução, como o if
. Todos os números e variáveis (contentores de números) poderão ser comparados uns com os outros nas perguntas.Aqui estão todas as perguntas possíveis:
Tabela 4.1. Tipos de perguntas
a == b | igual a | a resposta é “true” (verdadeira) se o a for igual ao b |
a != b | é diferente de | a resposta é “true” (verdadeira) se o a não for igual ao b |
a > b | maior que | a resposta é “true” (verdadeira) se o a for maior que o b |
a < b | menor que | a resposta é “true” (verdadeira) se o a for menor que o b |
a >= b | maior ou igual a | a resposta é “true” (verdadeira) se o a for maior ou igual ao b |
a <= b | menor ou igual a | a resposta é “true” (verdadeira) se o a for menor ou igual ao b |
As perguntas ficam realçadas com azul claro no editor de código.
As perguntas também podem ser coladas umas às outras com “palavras de colagem de perguntas” onde, desta forma, algumas perguntas tornam-se uma pergunta maior.
a = 1 b = 5 if (a < 5) and (b == 5) [ print "olá" ]Neste exemplo, a palavra de colagem
and
é usada para colar 2 perguntas (a < 5
, b == 5
) em conjunto. Se um lado do and
der uma resposta “false” (falsa), a pergunta toda irá responder “false”, porque, com a palavra de colagem and
, ambos os lados precisam de ser “true” para que a resposta seja “true” (verdadeira). Por favor não se esqueça de usar os parêntesis à volta das perguntas!Segue-se uma vista esquemática; pode encontrar uma explicação mais detalhada de seguida:
Tabela 4.2. Palavras de colagem de perguntas
and | ambos os lados têm de ser “true” (verdadeiros) para a resposta ser “true” (verdadeira) |
or | se um dos lados for “true” (verdadeiros) a resposta é “true” (verdadeira) |
not | Caso especial: só funciona com uma pergunta! Muda o 'true' para 'false' e o 'false' para 'true'. |
As palavras de colagem ficam realçadas a púrpura no editor de código.
Quando são coladas duas perguntas em conjunto com o and
, ambos os lados do and
terão ser 'true' para que o resultado também seja 'true' (verdadeiro). Por exemplo:
a = 1 b = 5 if ((a < 10) and (b == 5)) and (a < b) [ print "olá" ]Nestes exemplo, poderá ver uma pergunta colada a outra pergunta também colada.
Se uma das duas perguntas coladas em conjunto com o or
for 'true' (verdadeira), o resultado será também 'true'. Por exemplo:
a = 1 b = 5 if ((a < 10) or (b == 10)) or (a == 0) [ print "olá" ]Neste exemplo, irá ver uma pergunta colada a outra pergunta, também esta colada.
O not
é uma palavra de colagem de perguntas especial que só funciona para uma pergunta de cada vez. O not
muda o 'true' para 'false' e o 'false' para 'true'. Por exemplo:
a = 1 b = 5 if not ((a < 10) and (b == 5)) [ print "olá" ] else [ print "não olá ;-)" ]Neste exemplo, a pergunta colada é igual a 'true', embora o
not
a mude para 'false'. Como tal, no fim, será impresso o "não olá ;-)"
na área de desenho.Os controladores de execução permitem-lhe — como o nome deles indica — controlar a execução.
Os comandos de controlo da execução ficam realçados a verde escuro e a negrito. Os parêntesis rectos, que são mais usados em conjunto com os controladores de execução, ficam realçados a verde claro.
Se já tentou programar um pouco no KTurtle, você já poderá ter reparado que a tartaruga pode ser bastante rápida a desenhar. Este comando faz a tartaruga andar um pouco mais devagar.
wait XO
wait
faz a tartaruga esperar X segundos. repeat 36 [ forward 5 turnright 10 wait 0.5 ]Este código irá desenhar uma circunferência, mas a tartaruga irá esperar meio segundo a cada passo. Isto dá a noção de uma tartaruga vagarosa.
if pergunta [ ... ]O código que é colocado no “...” só será executado se (
if
) a resposta à pergunta for “true” (verdadeira). Por favor leia, para obter mais informações sobre perguntas, a secção de perguntas. x = 6 if x > 5 [ print "O x é maior que cinco!" ]Na primeira linha, o
x
é inicializado a 6. Na segunda linha, a pergunta x > 5
é feita. Dado que a resposta a esta pergunta é verdadeira, o controlador de execução if
irá permitir que o código entre parêntesis rectos seja executadowhile pergunta [ ... ]O controlador de execução
while
é um pouco como o if
. A diferença é que o while
continua a repetir o código entre parêntesis até que a resposta à pergunta seja “false” (falsa). x = 1 while x < 5 [ forward 10 wait 1 x = x + 1 ]Na primeira linha, o
x
fica igual a 1. Na segunda, a pergunta x < 5
é feita. Dado que a resposta a esta pergunta é “true” (verdadeira), o controlador de execução while
começa a execução do código entre parêntesis até que a resposta à pergunta seja “false” (falsa). Neste caso, o código entre parêntesis será executado 4 vezes, dado que, de cada vez que a quinta linha é executada, o x
fica um número acima.if pergunta [ ... ] else [ ... ]O
else
pode ser usado para além do controlador de execução if
. O código entre parêntesis a seguir ao else
só é executado se a resposta à pergunta que é feita for “false” (falsa). x = 4 if x > 5 [ print "O x é maior que cinco!" ] else [ print "O x é menor que seis!" ]A pergunta testa se o
x
é maior que 5. Dado que o x
fica igual a 4 na primeira linha, a resposta à pergunta é “false” (falsa). Isto significa que o código entre parêntesis a seguir ao else
é executado.forO cicloponto inicial
aponto final
[ ... ]
for
é um “ciclo de contagem”, ou seja, faz de contador para si. for x = 1 to 10 [ print x * 7 forward 15 ]De cada vez que o código entre parêntesis é executado, o
x
é incrementado de uma unidade, até que o valor do x
chegue a 10. O código entre parêntesis imprime o valor de x
multiplicado por 7. Depois de este programa terminar a sua execução, você irá ver a tabuada dos 7 na área de desenho.O learn
é um comando muito especial, porque é usado para criar os seus próprios comandos. O comando que criar poderá receber parâmetros e devolver resultados. Vamos ver como é que é criado um novo comando.
learn circunferencia x [ repeat 36 [ forward x turnleft 10 ] ]O novo comando chama-se
circunferencia
. O circunferencia
recebe um parâmetro, um número, para definir o tamanho da circunferência. O circunferencia
não devolve nenhum resultado. O comando circunferencia
pode agora ser usado como um comando normal. Veja este exemplo: learn circunferencia X [ repeat 36 [ forward X turnleft 10 ] ] go 30,30 circunferencia 20 go 40,40 circunferencia 50
No próximo exemplo, vai ser criado um comando com um valor de resultado devolvido.
learn multiplicarPeloProprio n [ r = n * 1 r = n * n return r ] i = inputwindow "Por favor indique um número e carregue em OK" print "O " + i + " multiplicado por ele próprio é igual a: " + multiplicarPeloProprio iNeste exemplo, existe agora um comando novo chamado
multiplicarPeloProprio
. O parâmetro deste comando é multiplicado por ele próprio e é então devolvido, usando o comando return
. O comando return
é a forma de devolver um resultado de uma função criada. Neste capítulo, você irá obter uma explicação para a maioria das palavras “pouco comuns” que são usadas no manual.
Os graus são uma unidade para medir ângulos ou voltas. Uma volta completa corresponde a 360 graus, o que corresponde a uma meia-volta como 180 graus e um quarto-de-volta como 90 graus. Os comandos turnleft
, turnright
e direction
necessitam de um parâmetro em graus.
Alguns comandos recebem parâmetros, outros devolvem resultados, outros fazem ambas as coisas e finalmente existem outros que não fazem nenhuma delas.
Alguns exemplos de comandos que só recebem parâmetros são:
forward 50 pencolor 255,0,0 print "olá!"O comando
forward
recebe o 50
como parâmetro, porque o forward
precisa deste parâmetro para saber quantos pontos deverá andar em frente. O pencolor
recebe um parâmetro e o print
recebe uma cadeia de caracteres com parâmetro. Lembre-se que o parâmetro também poderá ser um contentor. O próximo exemplo ilustra isto: x = 50 print x texto = "olá!" print texto
Agora alguns exemplos de comandos que devolvam resultados:
x = inputwindow "por favor escreva algo e carregue em OK... obrigado!" r = random 1,100O comando
inputwindow
recebe um texto como parâmetro e devolve o número ou o texto que é introduzido. Como poderá ver, o resultado do inputwindow
é guardado no contentor x
. O comando random
também devolve um resultado. Neste caso, devolve um número entre 1 e 100. O resultado do random
é de novo guardado num contentor, chamado r
. Lembre-se que os contentores x
e r
não são usados no código de exemplo acima.Também há alguns comandos que não precisam de parâmetros nem devolvem nada. Alguns exemplos:
clear penup wrapon hide
Esta é uma funcionalidade do KTurtle que torna a codificação ainda mais simples. Com o realce intuitivo, o código que você escrever ganha uma cor que indica qual o tipo de código que é. Na próxima lista, você irá encontrar os diferentes tipos de código e a cor que obtêm no editor de código.
Tabela 5.1. Os diferentes tipos de código e a sua cor de realce
comandos normais | verde escuro | Os comandos normais estão descritos aqui. |
controladores de execução | preto (negrito) | Os comandos especiais controlam a execução; poderá ler mais sobre eles aqui. |
comentários | amarelo escuro | As linhas que estão comentadas começam por caracteres de comentário (#); estas linhas são ignoradas quando o código é executado. Os comentários permitem ao programador explicar um pouco do seu código ou podem ser usadas para evitar temporariamente que um pedaço de código seja executado. |
parêntesis rectos [, ] | verde claro (negrito) | Os parêntesis rectos são usados para agrupar pedaços de código. Os parêntesis rectos são usados normalmente com os controladores de execução. |
o comando learn | verde claro (negrito) | O comando learn é usado para criar comandos novos. |
números | azul | Os números não têm muito que se lhe diga. |
texto | vermelho escuro | Também não há muito a dizer sobre o texto nas cadeias de caracteres, a não ser que começam e terminam com aspas ("). |
caracteres matemáticos | cinzento | Estes são os caracteres matemáticos: +, -, *, /, (, e ). Leia mais sobre eles aqui. |
caracteres das perguntas | azul (negrito) | Leia mais sobre as perguntas aqui. |
palavras de colagem das perguntas | cor de rosa | Leia mais sobre as palavras de colagem de perguntas ('and', 'or' e 'not') aqui. |
texto normal | preto |
Um ponto é um ponto no ecrã. Se você olhar muito de perto para o que vê no ecrã do seu monitor, irá constatar que ele usa pontos. Todas as imagens do ecrã são criadas com estes pontos. Um ponto é a menor coisa que poderá ser desenhada no ecrã.
Existem vários comandos que precisam de uma quantidade de pontos como parâmetro, e são: o forward
, backward
, go
, gox
, goy
, canvassize
e o penwidth
.
As combinações de RGB são usadas para descrever cores. O “R” vem de “red” (vermelho), o “G” de “green” (verde) e o “B” de “blue” (azul). Um exemplo de uma combinação RGB é o 255,0,0
, onde o valor da componente vermelha é 255 e as outras são 0, o que resulta num tom claro de vermelho. Cada valor de uma combinação RGB terá de estar no intervalo entre 0 e 255. Aqui está uma lista com as cores mais usadas:
Tabela 5.2. Combinações RGB mais usadas
0,0,0 | preto |
255,255,255 | branco |
255,0,0 | vermelho |
150,0,0 | vermelho escuro |
0,255,0 | verde |
0,0,255 | azul |
0,255,255 | azul claro |
255,0,255 | cor de rosa |
255,255,0 | amarelo |
Para descobrir facilmente as combinações RGB de uma cor, você deverá experimentar o extractor de cores! Você poderá descobri-lo aqui: ->.
Dois comandos necessitam de uma combinação RGB como parâmetro, e são eles: o canvascolor
e o pencolor
.
Uma imagem móvel é uma pequena imagem que pode ser movida pelo ecrã. A nossa tartaruga é uma imagem móvel, por exemplo.
Nota: com esta versão do KTurtle, a imagem móvel não consegue ser alterada de uma tartaruga para outra coisa. As versões futuras do KTurtle serão capazes de o fazer.
A envolvência é o que se passa quando a tartaruga desenha algo que é demasiado grande para caber na área de desenho e a envolvência está activa
A envolvência poderá ser activada e desactivada com os comandos wrapon
e wrapoff
. Quando o KTurtle começa, a envolvência está activa por omissão.
Como já deverá saber, a funcionalidade única da linguagem de programação Logo é que os seus comandos são muitas vezes traduzidos para a língua do programador. Isto remove uma barreira para alguns aprendizes para apanharem as bases da programação. Ao traduzir o KTurtle para uma nova língua, deverão ser traduzidos mais alguns ficheiros, para além das mensagens e documentação normais. Contudo, a maior parte desta é gerada automaticamente pelos programas de Rafael Beccar. Estes programas poderão ser encontrados em kdeedu/kturtle/scripts
, enquanto os ficheiros que necessitam de traduções poderão ser encontrados em kdeedu/kturtle/data
; nestas pastas também irá encontrar os ficheiros README que contêm as instruções para os usar/traduzir.
Primeiro, necessita de criar uma pasta para guardar os ficheiros traduzidos. Crie uma pasta chamada kde-i18n/
na sua pasta de CVS do KDE, onde o código
/data/kdeedu/kturtle/código
é o código do seu país (o código ISO de 2 ou 4 letras).
Copie o ficheiro Makefile.am
de kdeedu/kturtle/data/
para esta pasta. Abra-o com o seu editor de texto favorito, substitua todas as instâncias de “en_US” no ficheiro pelo seu código de país (o que é usado acima) e grave o ficheiro.
Copie o ficheiro logokeywords.en_US.xml
, mudando o seu nome para logokeywords.
em que o codigo
.xmlcodigo
é o código do seu país (para Portugal, é o pt).
Traduza para a sua própria língua o conteúdo da marca <keyword>
, isto é a informação entre o <keyword>
e o </keyword>
sempre que possível e o conteúdo da marca <alias>
, isto é a informação entre o <alias>
e o </alias>
. Este conteúdo está relacionado, dado que o conteúdo do 'alias' é um nome alternativo ou atalho para a palavra-chave.
Por exemplo, o “while” traduz-se em português para: <keyword>
enquanto</keyword>
.
Por favor não traduza mais nada e não traduza as palavras em inglês no <command name="palavra_em_ingles">
. Estas terão de permanecer em Inglês.
Última coisa: não altere a ordem deste ficheiro, dado que é necessário para os programas de geração automática das traduções do Rafael Beccar.
Grave o seu ficheiro como UTF-8 (no Kate, use o e mude para UTF-8 na lista à direita do nome do ficheiro).
Envie o seu ficheiro por CVS (adicione o nome do seu ficheiro ao Makefile.am
) ou envie-o para a Anne-Marie.
Em caso de qualquer dúvida, por favor contacte a Anne-Marie Mahfouf (annemarie.mahfouf AT free.fr)
para mais informações.
A tradução do ficheiro logohighlightstyle.en_US.xml
é bastante fácil, se usar o programa do Rafael Beccar em kdeedu/kturtle/data/
. Certifique-se que lê antes o ficheiro README nessa pasta.
Por uma razão de compatibilidade com todas as pessoas que não desejam a benção programada em Perl mencionada no parágrafo anterior, existe ainda a maneira à antiga de o fazer:
Copie o ficheiro logohighlightstyle.en_US.xml
, mudando o nome dele para logohighlightstyle.
em que o codigo
.xmlcodigo
é o código de 2 ou 4 letra ISO do seu país (no caso de Portugal, é o 'pt').
A linha 4 do ficheiro, tem um <language name="en_US">
..., o qual você deverá alterar para o código ISO da sua língua (“pt”, no caso do Português).
Traduza para a sua própria língua o conteúdo da marca <item>
i.e a informação entre o <item>
e o </item>
. Este conteúdo deverá ter uma correspondência ao ficheiro logokeyword
. Por exemplo, traduza o “while” para: <item>
enquanto </item>
e deixe os espaços tal como estão (um no início e um no fim). Por favor não traduza mais nada.
Grave o seu ficheiro como UTF-8 (no Kate, use o e mude para UTF-8 na lista à direita do nome do ficheiro).
Envie o seu ficheiro por CVS (adicione o nome do seu ficheiro ao Makefile.am
) ou envie-o para a Anne-Marie.
Em caso de qualquer dúvida, por favor contacte a Anne-Marie Mahfouf (annemarie.mahfouf AT free.fr)
para mais informações.
Mais uma vez, esta tarefa é bastante simplificada pelo programa do Rafael Beccar em kdeedu/kturtle/data/
. Certifique-se por favor que lê o ficheiro README nessa pasta, dado que ainda é necessário fazer algum trabalho, após os ficheiros de exemplo em Logo serem traduzidos automaticamente.
Quando seguir as instruções indicadas no ficheiro README que encontrou na pasta do programa, já deverá ter tudo pronto. Não se esqueça por favor de testar o código em Logo traduzido que criou, dado que é muito fácil introduzir alguns erros. Garanta também por favor que o ficheiro Makefile.am
no kde-i18n/
está actualizado de acordo com os ficheiros novos. Para o Holandês, o ficheiro código
/data/kdeedu/kturtle/Makefile.am
deverá ficar semelhante ao seguinte:
txt_DATA = advertentie.logo driehoeken.logo krullen.logo tafels.logo \ bloem.logo driehoek.logo logohighlightstyle.nl.xml pijl.logo vierkanten.logo \ kleuren.logo logokeywords.nl.xml randomnaam.logo vierkant.logo txtdir = $(kde_datadir)/kturtle/examples/nl xml_DATA = logohighlightstyle.nl.xml xmldir = $(kde_datadir)/katepart/syntax keywords_DATA = logokeywords.nl.xml keywordsdir = $(kde_datadir)/kturtle/data EXTRA_DIST = $(txt_DATA) $(xml_DATA) $(keywords_DATA)
Aqui está uma descrição de como fazer a tradução SEM utilizar os programas em Perl do Rafael:
Copie os exemplos em Inglês da pasta kdeedu/kturtle/data/
e mude os nomes dos ficheiros de acordo com a tradução para a sua língua: isto permitirá aos utilizadores perceberem rápida e facilmente o objectivo do exemplo.
Traduza as palavras-chave nos exemplos, usando as do logokeywords.xml
para a sua língua. O ficheiro de palavras-chave deverá estar terminado, em primeiro lugar, antes de traduzir os exemplos.
Grave o seu ficheiro como utf-8 (no Kate, use o e mude para UTF-8 na lista à direita do nome do ficheiro)
Envie a sua pasta (adicione um Makefile.am
dentro dela) ou envie-a para a Anne-Marie.
Em caso de alguma dúvida, por favor contacte a Anne-Marie Mahfouf, (annemarie.mahfouf AT free.fr)
para mais informações.
Finalmente, se você quiser, poderá adicionar os seus próprios exemplos nesta pasta.
KTurtle
Programa copyright 2003-2005 Cies Breijs (cies AT kde DOT nl)
Contribuições:
Ajuda na codificação, componente de edição: Anne-Marie Mahfouf (annma AT kde.org)
Autor do “WSBASIC” (wsbasic.sourceforge.net), a base para o interpretador do KTurtle: Walter Schreppers (Walter DOT Schreppers AT ua DOT ac DOT be)
Ficheiro de Dados em Alemão: Matthias Meßmer (bmlmessmer AT web DOT de)
Ficheiros de Dados em Alemão: Burkhard Lück (lueck AT hube-lueck DOT de)
Ficheiro de Dados em Sueco: Stefan Asserhäll (stefan DOT asserhal AT telia DOT com)
Ficheiros de Dados em Esloveno: Jure Repinc (jlp AT holodeck1.com)
Ficheiros de Dados em Sérvio (Cirílico e Latim): Chusslove Illich (caslav.ilic AT gmx.net)
Ficheiros de Dados em Italiano: Pino Toscano (toscano.pino AT tiscali.it)
Ficheiros de Dados em Inglês Britânico: Andy Potter (A.J.Potter AT rhul.ac.uk)
Ficheiro de Dados em Sueco: Stefan Asserhäll (stefan DOT asserhal AT telia DOT com)
Ficheiros de Dados em Português do Brasil: Riverson Rios (riverson AT ccv.ufc.br)
Ficheiros de Dados em Norueguês Nynorsk e Bokmål: Karl Ove Hufthammer (karl AT huftis.org)
Suporte do processador de cirílico: Albert Astals Cid (astals11 AT terra.es)
Documentação copyright 2004
Cies Briej (cies AT showroommama DOT nl)
Anne-Marie Mahfouf (annma AT kde DOT org)
Algumas alterações de correcção do texto por Philip Rodrigues (phil AT kde.org)
Ajuda de tradução actualizada e algumas mudanças de verificação editorial de Andrew Coles (andrew_coles AT yahoo DOT co DOT uk)
Tradução de José Nuno Pires (jncp AT netcabo.pt)
A documentação está licenciada ao abrigo da GNU Free Documentation License.
Este programa está licenciado ao abrigo da GNU General Public License.
O KTurtle faz parte do projecto do KDE http://www.kde.org/.
O KTurtle pode ser encontrado no pacote kdeedu em ftp://ftp.kde.org/pub/kde/, o servidor principal do projecto do KDE.
Para poder compilar e instalar o KTurtle no seu sistema escreva o seguinte na pasta de base da distribuição do KTurtle:
%
./configure
%
make
%
make install
Dado que o KTurtle usa o autoconf e o automake não deve ter quaisquer problemas a compilá-lo. Se tiver, comunique-os para as listas do KDE.
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team