Vous êtes sur la page 1sur 42

El manual de KTurtle

Cies Breijs
Anne-Marie Mahfouf
Mauricio Piacentini
Traductor: Rafael Beccar
Traductor: Leticia Martn Hernndez

El manual de KTurtle

ndice general
1. Introduccin
1.1. Qu es TurtleScript? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7
7

1.2. Caractersticas de KTurtle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2. Uso de KTurtle
2.1. El editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. El lienzo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3. El inspector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9
9
10
10

2.4. La barra de herramientas


2.5. La barra de mens . . .
2.5.1. El men Archivo
2.5.2. El men Editar .
2.5.3. El men Lienzo .
2.5.4. El men Ejecutar

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

10
10
10
11
12
12

2.5.5. El men Herramientas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


2.5.6. El men Preferencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.7. El men Ayuda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13
13
14

2.6. La barra de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

3. Cmo empezar

15

3.1. Primeros pasos con TurtleScript: conozca la tortuga! . . . . . . . . . . . . . . . . . .

15

3.1.1. La tortuga se mueve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

3.1.2. Otros ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

4. Gua del lenguaje de programacin TurtleScript

18

4.1. La gramtica de TurtleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

4.1.1. Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

4.1.2.
4.1.3.
4.1.4.
4.1.5.

.
.
.
.

19
19
19
20

4.2. Operadores aritmticos, lgicos y de comparacin . . . . . . . . . . . . . . . . . . .

20

4.2.1. Operadores aritmticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

rdenes . . . . . . . . . . . . . . .
Nmeros . . . . . . . . . . . . . . .
Cadenas . . . . . . . . . . . . . . .
Valores lgicos (verdadero/falso)

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

El manual de KTurtle

4.2.2. Operadores lgicos (verdadero/falso) . . . . . . . . . . . . . . . . . . . . . .


4.2.2.1.

21

Unos ejemplos ms complejos: . . . . . . . . . . . . . . . . . . . . .

21

4.2.3. Operadores de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

4.3. rdenes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1. Cmo mover la tortuga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22
22

4.3.2. Dnde est la tortuga? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

4.3.3. La tortuga tiene un pincel . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

4.3.4. rdenes que controlan el lienzo . . . . . . . . . . . . . . . . . . . . . . . . .

25

4.3.5. Comandos para limpiar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

4.3.6. La tortuga es un duendecillo . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

4.3.7. La tortuga puede escribir? . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

4.3.8. rdenes aritmticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


4.3.9. Entrada e informacin mediante dilogos . . . . . . . . . . . . . . . . . . . .

27
28

4.4. Asignar valores a las variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

4.5. Cmo controlar la ejecucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

4.5.1. Cmo hacer que la tortuga espere . . . . . . . . . . . . . . . . . . . . . . . .

30

4.5.2. Ejecutar si . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

4.5.3. Si no es as: sino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


4.5.4. El bucle mientras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.5. El bucle repetir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30
31
31

4.5.6. El bucle para, un bucle que cuenta . . . . . . . . . . . . . . . . . . . . . . .

31

4.5.7. Interrumpir un bucle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

4.5.8. Interrumpir la ejecucin de tu programa . . . . . . . . . . . . . . . . . . . .

32

4.5.9. Comprobacin de afirmaciones en tiempo de ejecucin . . . . . . . . . . . .

32

4.6. Crea tus propias rdenes con aprender . . . . . . . . . . . . . . . . . . . . . . . .

33

5. Glosario

35

6. Gua para la traduccin de KTurtle

39

7. Crditos y licencia

40

A. Instalacin
A.1. Cmo obtener KTurtle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.2. Compilacin e instalacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41
41
41

B. ndice alfabtico

42

El manual de KTurtle

ndice de cuadros
4.1. Tipos de preguntas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

5.1. Los diferentes tipos de cdigo y su color de resaltado . . . . . . . . . . . . . . . . .

37

5.2. Combinaciones RGB frecuentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

Resumen
KTurtle es un entorno educativo de programacin cuyo objetivo es facilitar el aprendizaje de cmo se programa. Para conseguirlo, KTurtle permite acceder a todas las herramientas
de programacin desde la interfaz de usuario. El lenguaje de programacin que se utiliza es
TurtleScript, que admite la traduccin de sus rdenes.

El manual de KTurtle

Captulo 1

Introduccin
KTurtle es un entorno educativo de programacin que usa TurtleScript, un lenguaje de programacin vagamente basado e inspirado en Logo. El objetivo de KTurtle es hacer que la programacin
sea fcil y accesible. Esto convierte a KTurtle en una herramienta apropiada para ensear a los
nios los fundamentos de las matemticas, la geometra y, por supuesto, la programacin. Una
de las caractersticas principales de TurtleScript es que permite traducir las rdenes al idioma del
programador.
KTurtle lleva este nombre en honor a la tortuga (turtle, en ingls) que juega un papel central en
este entorno de programacin. El estudiante, en general, dar instrucciones a la tortuga, usando
comandos de TurtleScript, para que esta realice un dibujo en el lienzo.

1.1.

Qu es TurtleScript?

TurtleScript, el lenguaje de programacin usado en KTurtle, est inspirado en la familia de lenguajes de programacin Logo. La primera versin del lenguaje Logo fue creada en 1967 por
Seymour Papert, del Laboratorio de Inteligencia Artificial de MIT (Massachusetts Institute of
Technology), como una evolucin del lenguaje de programacin LISP. A partir de este momento
aparecieron muchas versiones de Logo. En torno a 1980, Logo fue ganando impulso, con versiones para los sistemas MSX, Commodore, Atari, Apple II e IBM PC. Estas versiones fueron
desarrolladas principalmente con fines educativos. MIT sigue manteniendo un sitio web sobre
Logo que contiene una lista con varias implementaciones populares del lenguaje.
TurtleScript comparte una caracterstica con muchas otras implementaciones de Logo: la posibilidad de traducir las rdenes al idioma nativo del estudiante. Esta caracterstica facilita las cosas
a los estudiantes que no entienden ingls (o que lo entienden poco). KTurtle tiene otras muchas
caractersticas que tienen como objetivo que la primera experiencia de los estudiantes con la programacin sea lo ms sencilla posible.

1.2.

Caractersticas de KTurtle

KTurtle tiene algunas caractersticas que hacen que comenzar a programar sea coser y cantar.
Estas son algunas de las caractersticas ms destacadas de KTurtle:
Un entorno integrado con el intrprete de TurtleScript, el editor, el lienzo y otras herramientas,
todo en una nica aplicacin (sin dependencias adicionales).
La posibilidad de traducir las rdenes de TurtleScript usando el marco de traduccin de KDE.

El manual de KTurtle

TurtleScript admite funciones definidas por el usuario, algoritmos recursivos y el cambio de


tipos dinmicos.
En cualquier momento, la ejecucin puede ralentizarse, detenerse brevemente o interrumpirse.
Un poderoso editor que incluye resaltado intuitivo de sintaxis, numeracin de lneas, marcadores de errores, ejecucin visual y mucho ms.
El lienzo, donde la tortuga dibuja, puede ser imprimido o guardado como imagen (PNG) o
como dibujo (SVG).
Ayuda contextual: la ayuda cuando la necesita. Pulse F2 (o vaya a Ayuda Ayuda sobre: ...)
para obtener ayuda sobre la porcin de cdigo que se encuentre bajo su cursor.
Un dilogo de error que relaciona los mensajes de error con los errores en el programa, resaltndolos en rojo.
Terminologa simplificada de programacin.
Ejemplos integrados que le ayudan a empezar. Estos ejemplos han sido traducidos usando el
marco de traduccin de KDE.

El manual de KTurtle

Captulo 2

Uso de KTurtle

La ventana principal de KTurtle consta de las siguientes partes principales: 1) el editor, a la izquierda, que es donde se escriben las rdenes de TurtleScript 2) el lienzo, a la derecha, que es
donde la tortuga dibuja lo que se le ordena; y el inspector, 3) que le proporciona informacin
mientras se ejecuta el programa. Otras partes son la barra de mens, 4) desde la cual puede acceder a todas las funciones; la barra de herramientas, que le permite acceder rpidamente a las
funciones ms habituales; la consola, 5) donde puede introducir una lnea de cdigo para su verificacin; y la barra de estado, situada en la parte inferior de la ventana, donde puede comprobar
el estado de KTurtle.

2.1.

El editor

En el editor se escriben las rdenes de TurtleScript. La mayora de las funciones del editor pueden
encontrarse en los mens Archivo y Editar. El editor puede estar acoplado a cada uno de los
bordes de la ventana principal, o puede colocarse en cualquier lugar de su escritorio.
Dispone de varios mtodos para introducir el cdigo en el editor. Lo ms sencillo es usar un ejemplo: vaya a Archivo Ejemplos dentro del men Archivo y seleccione un ejemplo. El ejemplo
que elija se abrir en el editor y, a continuacin, podr seleccionar Ejecutar Ejecutar en la barra
de mens o pulsar el botn Ejecutar de la barra de herramientas para, si as lo desea, ejecutar el
cdigo.
9

El manual de KTurtle

Puede abrir archivos TurtleScript a travs de Archivo Abrir...


El tercer mtodo es escribir directamente su propio cdigo en el editor, o copiar y pegar cdigo
de otro lugar.

2.2.

El lienzo

El lienzo es el campo de accin de la tortuga; aqu, la tortuga dibuja siguiendo las instrucciones
que se le den. Despus de introducir un cdigo en el editor y de ejecutarlo, pueden ocurrir dos
cosas: que el cdigo se ejecute correctamente (con lo que con toda probabilidad ver cmo algo
cambia en el lienzo), o que haya un error en el cdigo (con lo que se mostrar una pestaa donde
se le explicar qu error ha cometido).
Puede ampliar o reducir el lienzo con la rueda de su ratn.

2.3.

El inspector

El inspector le informa acerca de las variables y las funciones aprendidas, y le muestra el rbol
del cdigo mientras se ejecuta el programa.
El inspector puede estar acoplado a cada uno de los bordes de la ventana principal, o puede
separarse y colocarse en cualquier lugar del escritorio.

2.4.

La barra de herramientas

Puede acceder desde aqu a las funciones ms habituales. En la barra de herramientas se encuentra tambin la consola, desde donde puede invocar rdenes. Esto le puede ser til si lo que quiere
es comprobar una orden sin tener que modificar el contenido del editor.
Puede configurar la barra de herramientas de acuerdo con sus preferencias en Preferencias
Configurar las barras de herramientas...

2.5.

La barra de mens

En la barra de mens encontrar todas las funciones de KTurtle. Estas estn agrupadas de la
siguiente forma: Archivo, Editar, Lienzo, Ejecutar, Herramientas, Preferencias y Ayuda. Todas
las funciones estn descritas a continuacin:

2.5.1.

El men Archivo

Archivo Nuevo (Ctrl-N)


Crea un nuevo archivo TurtleScript.
Archivo Abrir... (Ctrl-O)
Abre un archivo TurtleScript.
Archivo Abrir reciente
Abre un archivo TurtleScript utilizado recientemente.
10

El manual de KTurtle

Archivo Ejemplos
Abre ejemplos de programas TurtleScript. El idioma de estos ejemplos es el que haya seleccionado en Preferencias Idioma del cdigo.
Archivo Obtener ms ejemplos...
Abre el dilogo para obtener novedades para descargar de Internet archivos de TurtleScript
adicionales.
Archivo Guardar (Ctrl-S)
Guarda el archivo TurtleScript que est abierto en ese momento.
Archivo Guardar como...
Guarda el archivo TurtleScript que est abierto en ese momento en una ubicacin especfica.
Archivo Exportar a HTML...
Exporta el contenido del editor a un archivo HTML manteniendo los colores de resaltado.
Archivo Imprimir... (Ctrl-P)
Imprime el cdigo que aparece en el editor.
Archivo Salir (Ctrl-Q)
Sale de KTurtle.

2.5.2.

El men Editar

Editar Deshacer (Ctrl-Z)


Deshace el ltimo cambio en el cdigo. No hay lmite en KTurtle para el nmero de veces
que puede usarse esta funcin.
Editar Rehacer (Ctrl-Maysculas-Z)
Rehace un cambio en el cdigo que anteriormente ha sido deshecho.
Editar Cortar (Ctrl-X)
Corta el texto seleccionado del editor al portapapeles.
Editar Copiar (Ctrl-C)
Copia el texto seleccionado del editor al portapapeles.
Editar Pegar (Ctrl-V)
Pega el texto del portapapeles al editor.
Editar Seleccionar todo (Ctrl-A)
Selecciona todo el texto del editor.

11

El manual de KTurtle

Editar Buscar... (Ctrl-F)


Con esta funcin, puede buscar frases en el cdigo.
Editar Buscar siguiente (F3)
Use esto para encontrar la prxima aparicin de la frase que est buscando.
Editar Buscar anterior (Maysculas-F3)
Use esto para encontrar la aparicin anterior de la frase que est buscando.
Editar Modo de sobrescritura (Ins)
Cambia entre los modos insertar y sobrescribir.

2.5.3.

El men Lienzo

Lienzo Exportar a imagen (PNG)...


Exporta el contenido actual del lienzo a una imagen rasterizada de tipo PNG (Portable
Network Graphics).
Lienzo Exportar a dibujo (SVG)...
Exporta el contenido actual del lienzo a una imagen vectorial de tipo SVG (Scalable Vector
Graphics).
Lienzo Imprimir lienzo...
Imprime el contenido actual del lienzo.

2.5.4.

El men Ejecutar

Ejecutar Ejecutar (F5)


Inicia la ejecucin de las rdenes introducidas en el editor.
Ejecutar Pausar (F6)
Detiene momentneamente la ejecucin. Esta accin solo est disponible mientras se ejecutan las rdenes.
Ejecutar Interrumpir (F7)
Detiene la ejecucin. Esta accin solo est disponible mientras se ejecutan las rdenes.
Ejecutar Velocidad de ejecucin
Muestra una lista con las posibles velocidades de ejecucin:Velocidad mxima (sin resaltado y sin inspector), Velocidad mxima, Moderada , Lenta, Muy lenta y Paso a paso.
Cuando la velocidad de ejecucin es Velocidad mxima (que es el valor predeterminado)
apenas podremos ver lo que est ocurriendo. En ocasiones, esto es lo que se quiere, pero
es posible que en otras se prefiera seguir con atencin la ejecucin. Es entonces cuando
conviene cambiar la velocidad de ejecucin a Moderada, Lenta o Muy lenta. Cuando se
selecciona uno de estos modos, el punto actual de la ejecucin se muestra en el editor. Con
el modo Paso a paso las rdenes se ejecutan de una en una.
12

El manual de KTurtle

2.5.5.

El men Herramientas

Herramientas Selector de direccin...


Esta accin abre el dilogo de seleccin de direccin.
Herramientas Selector de color...
Esta accin abre el dilogo de seleccin de color.

2.5.6.

El men Preferencias

Preferencias Idioma del cdigo


Permite elegir el idioma del cdigo.
Preferencias Mostrar editor (Ctrl-E)
Muestra u oculta el editor.
Preferencias Mostrar inspector (Ctrl-I)
Muestra u oculta el inspector.
Preferencias Mostrar errores
Muestra u oculta la pestaa Errores con una lista de los errores que se han producido al
ejecutar el cdigo. Si esta opcin est activada, pulse sobre la pestaa Lienzo para volver a
ver la tortuga.
Preferencias Mostrar nmeros de lnea (F11)
Con esta accin se muestran los nmeros de lnea en el editor. Esta funcin es muy til para
encontrar errores.
Preferencias Mostrar la barra de herramientas
Conmuta la barra de herramientas principal
Preferencias Mostrar barra de estado
Conmuta la barra de estado
Preferencias Configurar los accesos rpidos...
Dilogo estndar de KDE para configurar los accesos rpidos.
Preferencias Configurar las barras de herramientas...
Dilogo estndar de KDE para configurar las barras de herramientas.

13

El manual de KTurtle

2.5.7.

El men Ayuda

Ayuda Manual de KTurtle (F1)


Inicia el sistema de ayuda de KDE mostrando las pginas de ayuda sobre KTurtle (este
documento).
Ayuda Qu es esto? (Maysculas+F1)
Modifica la forma del puntero transformndola en una combinacin de flecha e interrogacin. Al pulsar sobre los elementos que hay dentro de KTurtle se abrir una ventana de
ayuda (si existe para cada caso particular) con una descripcin de la funcin de dichos
elementos.
Ayuda Informar de fallo...
Abre un cuadro de dilogo para informar de fallos donde puede notificar un fallo o solicitar
una mejora o nueva propiedad deseable.
Ayuda Cambiar el idioma de la aplicacin...
Abre un dilogo donde puede modificar el Idioma principal de esta aplicacin y el Idioma
al que recurrir en caso de que el principal no est disponible.
Ayuda Acerca de KTurtle
Muestra informacin sobre la versin de la aplicacin y su autor.
Ayuda Acerca de KDE
Muestra la versin de KDE y otra informacin bsica.
Ayuda Ayuda sobre: ... (F2)
Esta es una funcin muy til: proporciona ayuda acerca de la porcin de cdigo en el editor
sobre el que se encuentra el cursor. Por ejemplo, ha usado la orden escribir en su cdigo
y quiere saber lo que el manual dice acerca de ella. Solo tiene que colocar el cursor sobre la
orden escribir y pulsar F2. El manual mostrar toda la informacin acerca de la orden
escribir.
Esta funcin le puede ser de gran ayuda a la hora de aprender el lenguaje de programacin
TurtleScript.

2.6.

La barra de estado

En la barra de estado se muestra informacin sobre el estado de KTurtle. A la izquierda se muestra informacin sobre la ltima accin. A la derecha encontrar la ubicacin actual del cursor
(nmero de lnea y de columna). En la parte intermedia de la barra de estado se indica el idioma
que se est usando para las rdenes.

14

El manual de KTurtle

Captulo 3

Cmo empezar
Cuando inicie KTurtle, ver algo como esto:

En esta gua para principiantes, supondremos que el idioma de las rdenes es el espaol. Puede
cambiar el idioma en Preferencias Idioma del cdigo. Tenga en cuenta que el idioma que elija
para KTurtle es el que usar para escribir las rdenes de TurtleScript, y no tiene por qu coincidir
con el idioma que usa KDE en su equipo y con el que se muestran la interfaz y los mens de
KTurtle.

3.1.

Primeros pasos con TurtleScript: conozca la tortuga!

Debe haber visto que hay una tortuga en el centro del lienzo: va a aprender a controlarla mediante
rdenes que introducir en el editor.

3.1.1.

La tortuga se mueve

Empecemos a mover la tortuga. Nuestra tortuga puede realizar tres tipos de movimiento: 1)
puede ir hacia atrs o hacia adelante; 2) puede girar a la derecha o a la izquierda; y 3) puede
15

El manual de KTurtle

desplazarse directamente (saltar) a una posicin de la pantalla. A modo de ejemplo, intente lo


siguiente:
avanzar 100
izquierda 90

Escriba o copie y pegue este cdigo en el editor y ejectelo (usando Ejecutar Ejecutar) para
ver el resultado.
Al introducir y ejecutar rdenes como las anteriores en el editor, es posible que haya notado
alguna de las siguientes cosas:
1. Despus de ejecutar las rdenes, la tortuga se desplaz hacia arriba y gir noventa grados
hacia la izquierda. Este es el resultado de usar las rdenes avanzar e izquierda.
2. El color del cdigo cambia a medida que vamos escribiendo. Esta caracterstica se denomina
resaltado intuitivo de sintaxis: los distintos tipos de rdenes se colorean de forma diferente.
Esto permite leer con facilidad grandes bloques de cdigo.
3. La tortuga dibuj una delgada linea negra.
4. Quizs obtuvo un mensaje de error. Esto puede significar dos cosas: puede haber cometido
una equivocacin al copiar las rdenes o todava tiene que elegir el idioma correcto de
las rdenes de TurtleScript (lo que puede hacer seleccionando Preferencias Idioma del
cdigo).
Probablemente entienda que avanzar 100 le ordena a la tortuga que se desplace hacia adelante
dejando una lnea, y que izquierda 90 le ordena que rote noventa grados hacia la izquierda.
Si desea una explicacin completa de estas rdenes, vea los siguientes enlaces al manual de referencia: avanzar, retroceder, izquierda y derecha.

3.1.2.

Otros ejemplos

El primer ejemplo es muy sencillo, as que comencemos.


reiniciar
tamaolienzo 200;200
colorlienzo 0;0;0
colorpincel 255;0;0
grosorpincel 5
ir 20;20
direccin 135
avanzar 200
izquierda 135
avanzar 100
izquierda 135
avanzar 141
izquierda 135
avanzar 100
izquierda 45
ir 40;100

16

El manual de KTurtle

De nuevo, puede escribir o copiar y pegar el cdigo en el editor, o abrir el ejemplo flecha que se
encuentra en el men Ejemplos y ejecutarlo (usando Ejecutar Ejecutar) para ver el resultado.
En los siguientes ejemplos se supondr que ya sabe cmo funciona este mecanismo.
Habr notado que este segundo ejemplo es mucho ms complejo. Tambin habr visto que hay
varias rdenes nuevas. Aqu tiene una breve explicacin de todas las rdenes nuevas:
Despus de una orden reiniciar, todo es como cuando inici KTurtle.
tamaolienzo 200;200 define un lienzo con un ancho y un alto de 200 pxeles. El ancho y el
alto son iguales, por lo que el lienzo ser un cuadrado.
colorlienzo 0;0;0 convierte el lienzo en negro. 0;0;0 es una combinacin RGB con todos
los valores igual a 0, lo que da lugar al color negro.
colorpincel 255;0;0 indica que el color del pincel debe ser rojo. 255;0;0 es una combinacin RGB con el valor del rojo igual a 255 (el mximo valor posible) y el valor de los otros colores
(el verde y el azul) igual a 0 (el mnimo valor posible). Esto da lugar a una tonalidad brillante de
rojo.
Si no entiende los valores de los colores, lea la entrada del glosario correspondiente a combinacin RGB.
grosorpincel 5 establece un grosor para el trazo del pincel igual a 5 pxeles. A partir de ahora,
cada lnea que la tortuga dibuje tendr un grosor de 5 pxeles, as hasta que cambiemos de nuevo
el valor de grosorpincel.
ir 20;20 le indica a la tortuga que vaya a una posicin determinada del lienzo. Contando desde
la esquina superior izquierda, esta posicin es 20 pxeles hacia la derecha y 20 pxeles hacia abajo.
Fjese que con la orden ir, la tortuga no dibuja una lnea.
direccin 135 define el ngulo de direccin de la tortuga. Las rdenes izquierda y der
echa cambian el ngulo de la tortuga con respecto a su direccin actual. En cambio, la orden
direccin cambia el ngulo de la tortuga a partir de cero y no en relacin con su direccin
anterior.
Despus de la orden direccin, hay unas cuantas rdenes del tipo avanzar e izquierda.
Estas rdenes son las que verdaderamente realizan el dibujo.
Finalmente, una nueva orden ir hace que la tortuga se posicione a un lado.
Asegrese de seguir los enlaces al manual de referencia, donde se explica con ms detalle cada
orden.

17

El manual de KTurtle

Captulo 4

Gua del lenguaje de programacin


TurtleScript
Esta es la gua del lenguaje de programacin TurtleScript de KTurtle. La primera seccin de este
captulo est dedicada a aspectos relacionados con la gramtica de los programas de TurtleScript. La segunda seccin trata exclusivamente los operadores aritmticos, los operadores lgicos
(verdadero/falso) y los operadores de comparacin. La tercera seccin es, bsicamente, una gran
lista con todos las rdenes explicadas una a una. La cuarta seccin explica cmo asignar valores
a las variables. Finalmente, en la quinta seccin se explica cmo organizar la ejecucin de rdenes usando declaraciones de control de la ejecucin y, en la sexta, cmo puedes crear tus propias
rdenes con aprender.

4.1.

La gramtica de TurtleScript

Como ocurre con todos los idiomas, TurtleScript consta de diferentes tipos de palabras y smbolos. En espaol distinguimos entre verbos (como caminar y cantar) y sustantivos (como
hermana o casa) que se usan para distintos propsitos. TurtleScript es un lenguaje de programacin que se usa para dar instrucciones a la tortuga sobre lo que tiene que hacer.
En esta seccin, se explican brevemente los distintos tipos de palabras que usa TurtleScript. Se introduce lo que son comentarios, rdenes y los tres diferentes tipos de literales: nmeros, cadenas
y valores lgicos (verdadero/falso).

4.1.1.

Comentarios

Un programa consta de instrucciones (que es lo que se ejecuta) y de los denominados comentarios. Los comentarios no se ejecutan. Es decir, KTurtle los ignora por completo cuando se ejecuta
un programa. Los comentarios estn ah para que otros programadores puedan comprender mejor el programa. Todo lo que aparece despus de un smbolo # se considera como un comentario
en TurtleScript. Un ejemplo es este programa que no hace nada:
# este programa no hace nada , es solo un comentario

Es un programa intil, pero permite explicar bien el asunto.


Los comentarios son especialmente tiles en el caso de programas ms complejos, ya que permiten dar consejos a otros programadores. En el siguiente programa vers comentarios que se usan
junto con la orden escribir.
18

El manual de KTurtle

# este programa ha sido creado por Cies Breijs


escribir " este texto aparecer escrito en el lienzo "
# la lnea anterior no es un comentario , pero la siguiente s que lo es :
# escribir " este texto no aparecer escrito !"

La primera lnea describe el programa. La segunda lnea es ejecutada por KTurtle, que escribe en
el lienzo este texto aparecer escrito en el lienzo. La tercera lnea es un comentario. Y la cuarta es un comentario que contiene una orden de TurtleScript. Si de esta cuarta lnea se
eliminara el smbolo #, KTurtle ejecutara la orden de escribir. Lo que los programadores suelen
decir es que la orden de escribir se ha comentado.
Las lneas comentadas aparecen resaltadas en gris claro en el editor de cdigo.

4.1.2.

rdenes

Con las rdenes puedes decirle a la tortuga o a KTurtle lo que tiene que hacer. Algunas rdenes
necesitan un parmetro de entrada, mientras que otras devuelven un parmetro de salida.
# avanzar es una orden que requiere de un parmetro de entrada , en este
caso el nmero 100:
avanzar 100

La primera lnea es un comentario. La segunda lnea contiene la orden avanzar y el nmero


100. El nmero no es parte de la orden, es solo su parmetro de entrada.
Algunas rdenes, como p. ej. ir, necesitan ms de un valor de entrada. Si hay varios valores, hay
que separarlos con el carcter , (coma).
Para una descripcin detallada de todas las rdenes que reconoce KTurtle, vaya aqu. Las rdenes
integradas en KTurtle aparecen resaltadas en azul oscuro.

4.1.3.

Nmeros

Lo ms probable es que ya sepa bastante de nmeros. La forma en que KTurtle usa los nmeros
no es muy diferente a cmo se hace en el idioma hablado o en las matemticas.
Tenemos los llamados nmeros naturales (0, 1, 2, 3, 4, 5, etc.), los enteros negativos
(-1, -2, -3, etc.) y los nmeros con decimales (0,1, 3,14, 33,3333, -5,05,
-1,0, etc.). El carcter , (coma) se utiliza como separador.
Los nmeros pueden utilizarse en conjuncin con operadores aritmticos y operadores de comparacin. Tambin pueden guardarse en variables. Los nmeros aparecen resaltados en rojo oscuro.

4.1.4.

Cadenas

Primero un ejemplo:
escribir " Hola , soy una cadena ."

En este ejemplo, escribir es una orden y Hola, soy una cadena. es una cadena.
Las cadenas comienzan y terminan con dobles comillas (); es esto lo que hace que KTurtle las
identifique como tal.
Al igual que ocurre con los nmeros, las cadenas tambin se pueden guardar en variables. Sin
embargo, al contrario que los nmeros, las cadenas no pueden usarse con operadores aritmticos
o con operadores de comparacin. Las cadenas aparecen resaltadas en rojo.
19

El manual de KTurtle

4.1.5.

Valores lgicos (verdadero/falso)

Solo hay dos valores lgicos: verdadero y falso, aunque en ocasiones se los denomina s y
no o uno y cero. Pero en TurtleScript siempre los llamaremos verdadero y falso. Fjate
en este cdigo de TurtleScript:
$a = verdadero

Si le echas un vistazo al inspector vers que a la variable $a le corresponde el valor verdadero


y que es de tipo lgico.
Con frecuencia, los valores lgicos son el resultado de un operador de comparacin, como ocurre
en el siguiente ejemplo:
$respuesta = 10 > 3

A la variable $respuesta le corresponde el valor verdadero porque 10 es mayor que 3.


Los valores lgicos verdadero y falso aparecen resaltados en rojo oscuro.

4.2.

Operadores aritmticos, lgicos y de comparacin

Aunque el ttulo de esta seccin parezca complejo, vers como el contenido no es tan difcil como
parece.

4.2.1.

Operadores aritmticos

Estos son los smbolos aritmticos bsicos: suma (+), resta (-), multiplicacin (*), divisin (/ ) y
potenciacin ().
Este es un ejemplo de cmo usar los operadores aritmticos en TurtleScript:
$sumar = 1 + 1
$restar = 20 - 5
$multiplicar = 15 * 2
$dividir = 30 / 30
$potencia = 2 ^ 2

Los valores resultantes de estas operaciones aritmticos son asignados a variables. Puedes ver los
valores resultantes en el inspector.
Si lo que quieres es realizar un clculo simple, puedes hacer algo como esto:
escribir 2010 -12

Ahora veamos un ejemplo con parntesis:


escribir ( ( 20 - 5 ) * 2 / 30 ) + 1

Primero se calculan las operaciones que estn dentro de los parntesis. En este ejemplo, primero
se calcula 20 - 5; el resultado se multiplica por 2, luego se divide por 30 y, por ltimo, se le suma
1. El resultado final es 2. Los parntesis pueden tambin usarse en otros casos.
KTurtle tambin tiene otras funciones aritmticas en forma de rdenes. Echa un vistazo a las
siguientes rdenes, eso s, teniendo en cuenta que se trata de operaciones avanzadas: redondear,
aleatorio, raz, pi, sen, cos, tan, arcsen, arccos, arctan.

20

El manual de KTurtle

4.2.2.

Operadores lgicos (verdadero/falso)

Mientras que los operadores aritmticos se usan principalmente con nmeros, los operadores
lgicos estn pensados para usarse con valores lgicos (verdadero y falso). Hay solo tres
operadores lgicos: y, o y no. El siguiente cdigo de TurtleScript muestra cmo usarlos:
$y_1_1
$y_1_0
$y_0_1
$y_0_0

=
=
=
=

verdadero y verdadero # -> verdadero


verdadero y falso # -> falso
falso y verdadero # -> falso
falso y falso # -> falso

$o_1_1
$o_1_0
$o_0_1
$o_0_0

=
=
=
=

verdadero o verdadero # -> verdadero


verdadero o falso # -> verdadero
falso o verdadero # -> verdadero
falso o falso # -> falso

$no_1 = no verdadero # -> falso


$no_0 = no falso # -> verdadero

Puedes ver los valores resultantes en el inspector, aunque tambin se proporcionan pequeos
comentarios al final de las lneas. Y resulta en verdadero solo si ambas partes son verdadero
s. O resulta en verdadero si una de las dos partes es verdadero. Y no transforma verdadero
en falso yfalso en verdadero.
Los operadores lgicos aparecen resaltados en rosa.
4.2.2.1.

Unos ejemplos ms complejos:

Considera el siguiente ejemplo con and:


$a = 1
$b = 5
si (( $a < 10) y ( $b == 5) ) y ( $a < $b ) {
escribir " hola "
}

En este cdigo de TurtleScript, el resultado de los tres operadores de comparacin estn agrupados mediante los operadores y. Esto significa que los tres resultados tienen que ser iguales a
verdadero para que se escriba la palabra hola.
Un ejemplo con o:
$n = 1
si ( $n < 10) o ( $n == 2) {
escribir " hola "
}

En este cdigo de TurtleScript, la parte izquierda del operador o es verdadera, mientras que la
derecha es falsa. Ya que una de las dos partes del operador o es verdadera, el resultado del
operador o tambin lo es. Esto quiere decir que se escribe la palabra hola.
Finalmente, un ejemplo con no, que transforma verdadero en falso y falso en verdadero.
Fjate:
$n = 1
si no ( $n == 3) {
escribir " hola "
} sino {
escribir " no hola ; -)"
}

21

El manual de KTurtle

4.2.3.

Operadores de comparacin

Considera esta comparacin sencilla:


$respuesta = 10 > 3

Aqu, 10 se compara con 3 usando el operador ms grande que. El resultado de esta operacin,
es decir, el valor lgico verdadero, se guarda en la variable $respuesta.
Todos los nmeros y variables (que contengan nmeros) pueden compararse entre s usando
operadores de comparacin.
Estos son todos los posibles operadores de comparacin:

$A == $B

igual a

$A != $B

no igual a

$A > $B

mayor que

$A < $B

menor que

$A >= $B

mayor o igual que

$A <= $B

menor o igual que

la respuesta es verdadera
si $A es igual a $B
la respuesta es verdadera
si $A no es igual a $B
la respuesta es verdadera
si $A es mayor que $B
la respuesta es verdadera
si $A es menor que $B
la respuesta es verdadera
si $A es mayor o igual que
$B
la respuesta es verdadera
si $A es menor o igual que B

Cuadro 4.1: Tipos de preguntas

Ten en cuenta que $A y $B tienen que ser nmeros o variables que contengan nmeros.

4.3.

rdenes

Con las rdenes podemos decirle a la tortuga o a KTurtle lo que tiene que hacer. Algunas rdenes requieren de parmetros de entrada, mientras que otras devuelven parmetros de salida.
En esta seccin se explican todas las rdenes integradas en KTurtle. Alternativamente, puedes
usar aprender para crear tus propias rdenes. Las rdenes que van a detallarse aqu aparecen
resaltadas en azul oscuro.

4.3.1.

Cmo mover la tortuga

Hay varias rdenes que permiten mover la tortuga por la pantalla.


avanzar (avz)
avanzar X

avanzar desplaza la tortuga hacia delante X pxeles. Cuando el pincel est bajado, la tortuga deja a su paso un trazo. avanzar puede abreviarse como avz.

22

El manual de KTurtle

retroceder (ret)
retroceder X

retroceder hace retroceder la tortuga X pxeles. Cuando el pincel est bajado, la tortuga
deja a su paso un trazo. retroceder puede abreviarse como ret.
izquierda (izq)
izquierda X

izquierda le ordena a la tortuga que rote X grados hacia la izquierda. izquierda puede
abreviarse como izq.
derecha (der)
derecha X

derecha le ordena a la tortuga que rote X grados hacia la derecha. derecha puede abreviarse como der.
direccin (dir)
direccin X

direccin determina el ngulo de direccin de la tortuga, que ser X grados contando a


partir de cero. No se tiene en cuenta la direccin anterior de la tortuga. direccin puede
abreviarse como dir.
obtenerdireccin
obtenerdireccin

obtenerdireccin determina el ngulo de direccin de la tortuga, que ser X grados


contando a partir de cero.
centrar
centrar

centrar mueve la tortuga al centro del lienzo.


ir
ir X; Y

ir le ordena a la tortuga que se desplace a una posicin concreta del lienzo. Esta posicin
est a X pxeles del margen izquierdo del lienzo y a Y pxeles del margen superior del
lienzo.
irx
irx X

23

El manual de KTurtle

irx le ordena a la tortuga que vaya a una posicin que est a X pxeles del margen izquierdo
del lienzo, sin modificar su altura. irx se puede abreviar con ix.
iry
iry Y

iry le ordena a la tortuga que vaya a una posicin que est a Y pxeles del margen superior
del lienzo, sin modificar la distancia a la que se encuentre del margen izquierdo. iry se
puede abreviar con iy.

NOTA
Con las rdenes ir, irx, iry y centrar, la tortuga no dibuja ningn trazo, independientemente
de que el pincel est bajado o no.

4.3.2.

Dnde est la tortuga?

Hay dos rdenes que devuelven la posicin de la tortuga en la pantalla.


obtenerx
obtenerx devuelve el nmero de pxeles desde el margen izquierdo del lienzo de la posicin actual de la tortuga.
obtenery
obtenery devuelve el nmero de pxeles desde el margen superior del lienzo de la posicin actual del la tortuga.

4.3.3.

La tortuga tiene un pincel

La tortuga tiene un pincel que dibuja una lnea cuando esta se desplaza. Hay varia rdenes que
controlan el pincel. En esta seccin se explican estas rdenes.
levantarpincel (lpl)
levantarpincel

levantarpincel alza el pincel del lienzo. Cuando el pincel est levantado, la tortuga
no deja ningn trazo cuando se desplaza. Consulta tambin bajarpincel. levantarpi
ncel puede abreviarse como lpl.
bajarpincel (bpl)
bajarpincel

bajarpincel presiona el pincel sobre el lienzo. Cuando el pincel est bajado, la tortuga
deja un trazo a su paso. Vea tambin levantarpincel. bajarpincel puede abreviarse
como bpl.
grosorpincel (gpl)
24

El manual de KTurtle

grosorpincel X

grosorpincel fija el grosor de la lnea trazada por la tortuga en X pxeles. grosorpinc


el puede abreviarse como gpl.
colorpincel (cpl)
colorpincel R;G;B

colorpincel fija el color del pincel. El parmetro de entrada de colorpincel es una


combinacin RGB. colorpincel puede abreviarse como cpl.

4.3.4.

rdenes que controlan el lienzo

Existen varias rdenes que controlan el lienzo.


tamaolienzo (tl)
tamaolienzo X;Y

Con la orden tamaolienzo puede modificar las dimensiones del lienzo. Requiere de X e
Y como parmetros de entrada, donde X es el ancho en pxeles del nuevo lienzo, e Y es la
altura del nuevo lienzo tambin en pxeles. tamaolienzo puede abreviarse como tl.
colorlienzo (cl)
colorlienzo R;G;B

colorlienzo define el color del lienzo. El parmetro de entrada de colorlienzo es una


combinacin RGB. colorlienzo puede abreviarse como cl.

4.3.5.

Comandos para limpiar

Existen dos comandos que permiten limpiar el lienzo despus de un embrollo.


limpiar (lmp)
limpiar

Con limpiar puede borrar todos los dibujos del lienzo. Todo lo dems permanece: la posicin y ngulo de la tortuga, el color del lienzo, la visibilidad de la tortuga y el tamao del
lienzo.
reiniciar
reiniciar

reiniciar borra todo de una forma ms concienzuda que la orden limpiar. Despus
de una orden reiniciar, todo vuelve a como estaba cuando inici KTurtle. La tortuga
regresar a su posicin en el centro del lienzo, el color del lienzo volver a ser blanco, la
tortuga dibujar de nuevo una lnea negra en el lienzo y el tamao del lienzo ser 400x400
pxeles.
25

El manual de KTurtle

4.3.6.

La tortuga es un duendecillo

Antes de nada conviene explicar qu son los sprites: los duendecillos son pequeas figuras que
pueden desplazarse por la pantalla, como vemos con frecuencia en los videojuegos. Nuestra tortuga tambin es un duendecillo. Para obtener ms informacin, consulta la entrada en el glosario
correspondiente a los duendecillos.
A continuacin, encontrars una descripcin detallada de todas las rdenes relacionadas con
duendecillos.
(La versin actual de KTurtle no admite otro duendecillo aparte de la tortuga. En las versiones
futuras s que podr cambiar la tortuga por algo diseado por usted mismo.)
mostrartortuga (mt)
mostrartortuga

mostrartortuga vuelve visible de nuevo a la tortuga despus de haberla ocultado. mos


trartortuga puede abreviarse como mt.
ocultartortuga (ot)
ocultartortuga

ocultartortuga oculta la tortuga. Puede usarse cuando la tortuga no quede bien en su


dibujo. ocultartortuga puede abreviarse como ot.

4.3.7.

La tortuga puede escribir?

La respuesta es s. La tortuga puede escribir: escribir todo lo que le ordenes.


escribir
escribir X

La orden escribir le indica a la tortuga que escriba algo en el lienzo. El parmetro de entrada de escribir puede ser un nmero o una cadena. Puedes concatenar varios nmeros
y cadenas usando el smbolo +. Aqu tienes un ejemplo sencillo:
$ao = 2003
$autor = " Cies "
escribir $autor + " comenz a trabajar en el proyecto KTurtle en " +
$ao + " y todava disfruta hacindolo "

tamaoletra
tamaoletra X

tamaoletra fija el tamao del tipo de letra que usa la orden escribir. El parmetro
de entrada de tamaoletra tiene que ser un nmero. El tamao viene determinado en
pxeles.

26

El manual de KTurtle

4.3.8.

rdenes aritmticas

Las siguientes son algunas de las rdenes aritmticas ms avanzadas de KTurtle.


redondear
redondear (X)

Permite redondear el nmero dado a su entero ms cercano.


escribir redondear (10 ,8)
avanzar 20
escribir redondear (10 ,3)

Este cdigo hace que la tortuga escriba los nmeros 11 y 10.


aleatorio (alt)
aleatorio X;Y

aleatorio es una orden que requiere de parmetros de entrada y que devuelve un parmetro de salida. Como parmetros de entrada, necesita dos nmeros, el primero (X) fija el
valor mnimo del parmetro de salida, y el segundo (Y) fija su valor mximo. El parmetro
de salida es un nmero elegido al azar que es igual o ms grande que el valor mnimo, e
igual o ms pequeo que el valor mximo. Aqu tiene un ejemplo sencillo:
repetir 500 {
$x = aleatorio 1;20
avanzar $x
izquierda 10 - $x
}

Con la orden aleatorio puedes incorporar algo de caos a tu programa.


mod
mod X ,Y

La orden mod devuelve el resto de la divisin del primer nmero entre el segundo nmero.
raz
raz X

La orden raz sirve para calcular la raz cuadrada de un nmero X.


pi
pi

Esta orden devuelve el valor del nmero Pi, 3,14159.


sen, cos, tan

27

El manual de KTurtle

sen X
cos X
tan X

Estas tres rdenes representan las famosas funciones trigonomtricas sen, cos y tan. El
parmetro de entrada de estas tres rdenes, X, es un nmero.
arcsen, arccos, arctan
arcsen X
arccos X
arctan X

Estas tres rdenes son las funciones inversas de sen, cos y tan. El parmetro de entrada de
estas rdenes, X, es un nmero.

4.3.9.

Entrada e informacin mediante dilogos

Un dilogo es una pequea ventana emergente que proporciona informacin o que solicita un
parmetro de entrada. KTurtle tiene dos rdenes relacionadas con dilogos: mensaje y pregun
tar.
mensaje
mensaje X

La orden mensaje necesita una cadena como parmetro de entrada. Muestra una ventana
emergente con el texto de la cadena.
mensaje " Cies comenz a trabajar en el proyecto KTurtle en 2003 y
todava disfruta hacindolo "

preguntar
preguntar X

preguntar necesita una cadena como parmetro de entrada. Muestra el texto de la cadena
en una ventana emergente (igual que hace mensaje) junto a un campo de entrada. Una vez
que el usuario ha introducido un nmero o una cadena, el resultado puede guardarse en
una variable o pasarse como un argumento a otra orden. Por ejemplo:
$entrada = preguntar " En qu ao naciste ?"
$salida = 2003 - $entrada
escribir " En 2003 tenas " + salida + " aos ."

Si el usuario cancela el dilogo de entrada o no introduce ningn valor, la variable queda


vaca.

28

El manual de KTurtle

4.4.

Asignar valores a las variables

Antes de nada, echemos un vistazo a las variables, despus veremos cmo asignarles valores.
Las variables son palabras que comienzan con un $; en el editor, aparecen resaltadas en color
morado.
Las variables pueden contener un nmero, una cadena o un valor lgico (verdadero/falso). Con
el signo de asignacin (=) se da un valor a la variable, que mantendr hasta que el programa
termine de ejecutarse o hasta que se le asigne un nuevo valor.
Puedes usar las variables, una vez asignadas, de la misma forma que usaras su contenido. Por
ejemplo, vea el siguiente cdigo de TurtleScript:
$x = 10
$x = $x / 3
escribir $x

Primero, a la variable $x se le asigna el valor 10. A continuacin, a esta misma variable $x se le


asigna su propio valor dividido por 3, es decir, a la variable $x se da el valor 10 / 3. Finalmente,
se escribe $x. En las lneas dos y tres, comprobar que se usa la variable $x como si fuera un
nmero.
A las variables hay que asignarles un valor para que puedan ser usadas. Por ejemplo:
escribir $n

Este cdigo da lugar a un mensaje de error.


Considera el siguiente cdigo de TurtleScript:
$a = 2004
$b = 25
# la siguiente orden escribe "2029"
escribir $a + $b
retroceder 30
# la siguiente orden escribe "2004 ms 25 igual a 2029"
escribir $a + " ms " + $b + " es igual a " + ( $a + $b )

En las primeras dos lneas, a las variables $a y $b se les asigna los valores 2004 y 25. A continuacin hay dos rdenes escribir con una orden retroceder 30 en medio. Los comentarios que
hay antes de las rdenes escribir explican lo que hacen. Como ves, puedes usar las variables
de la misma forma que usaras sus contenidos. Es decir, puedes usarlas con cualquier operador o
convertirlas en el parmetro de entrada de una orden.
Un nuevo ejemplo:
$nombre = preguntar " Cul es tu nombre ?"
escribir " Hola " + $nombre + "! Buena suerte con el aprendizaje del arte
del programar ..."

Este ejemplo es muy claro. De nuevo, aqu tiene como la variable $name se trata como si fuera
una cadena.
Cuando ests usando variables, el inspector te puede ser de gran ayuda. Muestra el contenido de
todas las variables que estn en uso en un momento dado.

29

El manual de KTurtle

4.5.

Cmo controlar la ejecucin

Los controladores de la ejecucin permiten, tal como su nombre indica, controlar la ejecucin.
Las rdenes de control de la ejecucin aparecen resaltadas en negro y con un tipo de letra negrita. Las llaves, que se usan generalmente junto con los controladores de ejecucin, aparecen
resaltadas en negro.

4.5.1.

Cmo hacer que la tortuga espere

Si ya has programado algo en KTurtle, te habrs dado cuenta de que la tortuga es muy rpida dibujando. Con esta orden puede hacer que la tortuga se detenga durante un tiempo determinado.
esperar
esperar X

esperar hace que la tortuga se detenga durante X segundos.


repetir 36 {
avanzar 5
derecha 10
esperar 0 ,5
}

Este cdigo dibuja un circulo, pero la tortuga espera durante medio segundo antes de realizar el siguiente paso. Esto da la impresin de que la tortuga se est moviendo a cmara
lenta.

4.5.2.

Ejecutar si

si
si valor lgico { ... }

El cdigo que est entre llaves solo se ejecutar si el valor lgico es verdadero.
$x = 6
si $x > 5 {
escribir $x + " es mayor que cinco "
}

En la primer lnea, a $x se le asigna el valor 6. En la segunda, se usa un operador de comparacin para evaluar la condicin $x > 5. Al cumplirse esta condicin, es decir, al ser 6
mayor que 5, el controlador si permite que el cdigo entre llaves se ejecute.

4.5.3.

Si no es as: sino

sino
si valor lgico { ... } sino { ... }

sino puede usarse en conjuncin con el controlador si. El cdigo que aparece entre llaves
despus de sino solo se ejecute si el valor lgico es falso.
30

El manual de KTurtle

reiniciar
$x = 4
si $x > 5 {
escribir $x + " es mayor que cinco "
}
sino {
escribir $x + " es menor que seis "
}

El operador de comparacin evala la expresin $x > 5. Ya que en este caso 4 no es mayor


que 5, el resultado es falso. Esto quiere decir que se ejecuta el cdigo que aparece entre
llaves despus de sino.

4.5.4.

El bucle mientras

mientras
mientras valor lgico { ... }

El controlador mientras acta de forma similar a si. La diferencia es que mientras


contina ejecutando (en un bucle) el cdigo que se encuentra entre llaves hasta que el valor
lgico sea falso.
$x = 1
mientras $x < 5 {
avanzar 10
esperar 1
$x = $x + 1
}

En la primer lnea, a $x se le asigna el valor 1. En la segunda, se evala la condicin $x <


5. Mientras el resultado de esta condicin sea verdadero, el controlador while contina
ejecutando el cdigo que se encuentra entre llaves, as hasta que la condicin $x < 5 sea
falsa. En este ejemplo, el cdigo entre llaves se ejecuta 4 veces, porque cada vez que la
quinta lnea se ejecuta, al valor de $x se le suma 1.

4.5.5.

El bucle repetir

repetir
repetir nmero { ... }

El controlador repetir acta de forma similar a mientras. La diferencia es que repetir


contina ejecutando (en un bucle) el cdigo que se encuentra entre llaves tantas veces como
le indica el nmero dado.

4.5.6.

El bucle para, un bucle que cuenta

para
para variable = nmero hasta nmero { ... }

31

El manual de KTurtle

El bucle para es un bucle que cuenta, es decir, que lleva la cuenta por ti. El primer nmero asigna a la variable el valor del primer bucle. Con cada bucle, este nmero se incrementa
hasta alcanzar el segundo nmero.
para $x = 1 hasta 10 {
escribir $x * 7
avanzar 15
}

Cada vez que se ejecute el cdigo entre llaves, la variable $x se incrementa en 1, as hasta
que sea igual a 10. El cdigo entre llaves escribe el valor de $x multiplicado por 7. Cuando
el cdigo termine de ejecutarse, vers en el lienzo la tabla de multiplicar del 7.
El incremento predeterminado del bucle es 1, pero puedes usar otro valor con:
para variable = nmero hasta nmero paso nmero { ... }

4.5.7.

Interrumpir un bucle

parar
parar

Interrumpe inmediatamente el bucle que se est ejecutando y transfiere el control a la primera lnea de cdigo despus del bucle.

4.5.8.

Interrumpir la ejecucin de tu programa

salir
salir

Detiene la ejecucin de tu programa.

4.5.9.

Comprobacin de afirmaciones en tiempo de ejecucin

afirmar
afirmarvalor lgico { ... }

Se puede utilizar para razonar sobre la correccin del programa o de los datos de entrada
$in = ask " What is your year of birth ?"
# el ao debe ser positivo
assert $in
> 0

32

El manual de KTurtle

4.6.

Crea tus propias rdenes con aprender

aprender es especial ya que lo puedes usar para crear tus propias rdenes. La orden que crees
puede admitir parmetros de entrada y devolver parmetros de salida. Veamos cmo se crea una
nueva orden:
aprender crculo $x {
repetir 36 {
avanzar $x
izquierda 10
}
}

La nueva orden se denomina crculo. crculo necesita un parmetro de entrada para fijar el
tamao del crculo y no devuelve ningn parmetro de salida. A partir de ahora la orden crcu
lo puede utilizarse como una orden normal en cualquier lugar del cdigo. Mira este ejemplo:
aprender crculo $x {
repetir 36 {
avanzar $x
izquierda 10
}
}
ir 200;200
crculo 20
ir 300;200
crculo 40

En el prximo ejemplo, se crea una orden que devuelve un parmetro de salida:


aprender facultad $x {
$r = 1
para $i = 1 hasta $x {
$r = $r * $i
}
devolver $r
}
escribir facultad 5

En este ejemplo, se crea una nueva orden llamada facultad. Si el parmetro de entrada es 5,
entonces el parmetro de salida es 5*4*3*2*1. Con devolver se define un parmetro de salida
que se devuelve durante la ejecucin.
Las rdenes pueden tener ms de un parmetro de entrada. En el siguiente ejemplo se crea una
orden que dibuja un rectngulo:
aprender caja $x ; $y {
avanzar $y
derecha 90
avanzar $x
derecha 90
avanzar $y
derecha 90
avanzar $x
derecha 90
}

33

El manual de KTurtle

Ahora, si ejecuta caja 50;100, la tortuga dibujar una rectngulo en el lienzo.

34

El manual de KTurtle

Captulo 5

Glosario
En este capitulo encontrar una explicacin de muchas de las palabras inusuales que se utilizan
a lo largo del manual.
grados
Grados son unidades para medir ngulos y giros. Una vuelta completa es 360 grados, media
vuelta 180 grados y una cuarto de vuelto 90 grados. Las rdenes izquierda, derecha y
direccin necesitan un parmetro de entrada en grados.
parmetros de entrada y parmetros de salida de las rdenes
Hay rdenes que necesitan un parmetro de entrada, rdenes que devuelven un parmetro
de salida, rdenes que necesitan un parmetro entrada y devuelven un parmetro salida, y
rdenes que ni necesitan un parmetro de entrada ni devuelven un parmetro de salida.
Ejemplos de rdenes que solo necesitan parmetros de entrada son:
avanzar 50
colorpincel 255;0;0
escribir " Hola !"

La orden avanzar toma el valor 50 como parmetro de entrada. La orden avanzar necesita este parmetro de entrada para saber cuntos pxeles deber avanzar hacia delante. La
orden colorpincel necesita un color como parmetro de entrada, y la orden escribir,
una cadena de texto. Tenga en cuenta que el parmetro de entrada puede ser tambin una
variable. El siguiente ejemplo es una muestra de esto:
$x = 50
escribir $x
avanzar 50
$str = " Hola !"
escribir $str

Aqu hay ejemplos de rdenes que devuelven un parmetro de salida:


$x = preguntar " Escriba cualquier cosa y pulse Aceptar . Gracias !"
$r = aleatorio 1;100

La orden preguntar necesita una cadena como parmetro de entrada, y devuelve el nmero o cadena que se le proporciona. Como puede ver, el parmetro de salida de la orden
preguntar se guarda en la variable $x. La orden aleatorio tambin devuelve un parmetro de salida. En este caso, se trata de un nmero entre 1 y 100. El parmetro de salida
de la orden aleatorio tambin se guarda en una variable, denominada en este caso $r.
Fjese que las variables $x y $r no tienen ningn uso en este ejemplo.
35

El manual de KTurtle

Tambin hay rdenes que no requieren de parmetros de entrada y que no devuelven ningn parmetro de salida. Estos son algunos ejemplos:
limpiar
levantarpincel

resaltado intuitivo
Esta es una caracterstica de KTurtle que hace que programar sea mucho ms fcil. Con el
resaltado intuitivo, el cdigo que escribe se muestra en uno u otro color en funcin de qu
tipo de cdigo sea. En la siguiente lista encontrar los diferentes tipos de cdigo y el color
en que se muestran en el editor.

rdenes habituales

azul oscuro

rdenes de control de la
ejecucin

negro (negrita)

comentarios

gris

llaves {, }

verde oscuro (negrita)

la orden aprender

verde claro (negrita)

cadenas

rojo

nmeros

rojo oscuro

valores lgicos

rojo oscuro

36

Las rdenes habituales se


describen aqu.
Estas rdenes especiales
controlan la ejecucin; lea
ms sobre estas rdenes
aqu.
Cuando una lnea de
cdigo comienza con el
carcter #, se interpreta
como un comentario.
Estas lneas se ignoran
durante la ejecucin del
cdigo. Los comentarios
permiten a los
programadores explicar
un poco su cdigo.
Pueden usarse tambin
para evitar que una parte
concreta del cdigo se
ejecute.
Las llaves se usan para
agrupar porciones de
cdigo. Las llaves se
utilizan con frecuencia en
combinacin con los
controladores de
ejecucin.
La orden aprender se usa
para crear nuevas
instrucciones.
No hay mucho que decir
acerca de estas cadenas
(de texto), excepto que
siempre comienzan y
terminan con dobles
comillas ().
Son nmeros, no es
necesario aadir ms.
Existen dos valores
lgicos, verdadero y falso.

El manual de KTurtle

variables

prpura

operadores aritmticos

gris

operadores de
comparacin

azul claro (negrita)

operadores lgicos

rosado (negrita)

Comienzan con el smbolo


$ y pueden ser
nmeros, cadenas o
valores lgicos.
Estos son los operadores
aritmticos: +, -, *, / y .
Estos son los operadores
de comparacin: ==, !=,
<, >, <= y >=.
Estos son los operadores
lgicos: y, o y no.

texto normal
negro
Cuadro 5.1: Los diferentes tipos de cdigo y su color de resaltado

pxeles
Un pxel es un punto sobre la pantalla. Si observa con atencin, ver que la pantalla de su
monitor usa pxeles. Todas las imgenes que aparecen en la pantalla se construyen a base
de pxeles. Un pxel es lo ms pequeo que puede dibujarse en una pantalla.
Muchas rdenes necesitan un nmero de pxeles como parmetro de entrada. Estas rdenes
son: avanzar, retroceder, ir, irx, iry, tamaolienzo y grosorpincel.
En versiones anteriores de KTurtle, el lienzo era bsicamente una imagen rasterizada; sin
embargo, en las versiones ms recientes, el lienzo es una imagen vectorial. Esto quiere decir
que la escala del lienzo puede ampliarse o reducirse y que, por lo tanto, un pxel no se
corresponde necesariamente con un punto sobre la pantalla.
Combinaciones RGB (cdigo de colores)
Las combinaciones RGB se utilizan para describir colores. La R (que viene de la palabra inglesa red) representa el rojo, la G (de la palabra inglesa green) representa el
verde, y la B (de la palabra inglesa blue) representa el azul. Un ejemplo de una
combinacin RGB es 255;0;0. El primer valor (es decir, el rojo) es 255 y los otros dos son
0, lo que da lugar a una tonalidad brillante de rojo. Cada valor de una combinacin RGB
debe estar entre 0 y 255. Aqu hay una lista con algunos de los colores ms utilizados:
0;0;0
255;255;255
255;0;0
150;0;0
0;255;0
0;0;255
0;255;255
255;0;255
255;255;0

negro
blanco
rojo
rojo oscuro
verde
azul
azul claro
rosado
amarillo
Cuadro 5.2: Combinaciones RGB frecuentes

Existen dos rdenes que necesitan combinaciones RGB como parmetro de entrada: colo
rlienzo y colorpincel.
sprite
Un sprite (en ingls duendecillo) es una pequea imagen que puede moverse por la pantalla. Nuestra querida tortuga, por ejemplo, es un sprite.
37

El manual de KTurtle

Nota: en esta versin de KTurtle, el sprite no puede cambiarse de una tortuga a otra imagen.
Sin embargo, en futuras versiones de KTurtle s que est previsto que se pueda hacer esto.

38

El manual de KTurtle

Captulo 6

Gua para la traduccin de KTurtle


Como probablemente ya sepa, el lenguaje de programacin de KTurtle, TurtleScript, puede ser
traducido. Se elimina as una de las barreras que algunas personas, especialmente los estudiantes
ms jvenes, encuentran a la hora de comprender los fundamentos de la programacin.
Cuando traduzca KTurtle a un nuevo idioma encontrar, junto a las cadenas de la interfaz grfica
de usuario, que las rdenes de programacin, los ejemplos y los mensajes de error estn incluidos
en los archivos .pot estndares que se usan para la traduccin en KDE. Todo se traduce siguiendo
el mtodo de traduccin habitual de KDE. No obstante, se le recomienda que aprenda cmo
traducir esta aplicacin en particular (como tambin leer en los comentarios del traductor).
Vaya a http://edu.kde.org/kturtle/translator.php si desea obtener ms informacin acerca del
proceso de traduccin. Le agradecemos su colaboracin. KTurtle depende en gran medida de sus
traducciones.

39

El manual de KTurtle

Captulo 7

Crditos y licencia
KTurtle
Copyright del programa 2003-2005 Cies Breijs cies AT kde DOT nl
Copyright de la documentacin 2004, 2007, 2009
Cies Briej cies AT kde DOT nl
Anne-Marie Mahfoufannma AT kde DOT org
Correcciones hechas por Philip Rodrigues phil@kde.org
Actualizacin de la gua de traduccin y correcciones: Andrew Coles andrew_coles AT yahoo
DOT co DOT uk
Traducido por Rafael Beccarrafael.beccar@kdemail.net y Leticia Martn Hernndez leticia.martin@gmail.com
Esta documentacin est sujeta a los trminos de la Licencia de Documentacin Libre GNU.
Este programa est sujeto a los trminos de la Licencia Pblica General GNU.

40

El manual de KTurtle

Apndice A

Instalacin
A.1.

Cmo obtener KTurtle

KTurtle forma parte del proyecto KDE http://www.kde.org/ .


KTurtle est incluido en el paquete kdeedu en ftp://ftp.kde.org/pub/kde/ , el servidor FTP del
proyecto KDE.

A.2.

Compilacin e instalacin

Consulte Construir KDE4 desde el cdigo fuente para obtener informacin detallada sobre cmo
compilar e instalar aplicaciones de KDE
Como KDE usa cmake, no debera tener ningn problema para compilarlo. Si encuentra alguna
dificultad le rogamos que se dirija a las listas de distribucin de KDE.

41

El manual de KTurtle

Apndice B

ndice alfabtico
A
afirmar, 32
aleatorio (alt), 27
arccos, 28
arcsen, 28
arctan, 28
avanzar (avz), 22

P
para, 31
parar, 32
paso, 31
pi, 27
preguntar, 28
R
raz, 27
redondear, 27
reiniciar, 25
repetir, 31
retroceder (ret), 23

B
bajarpincel (bpl), 24
C
centrar, 23
colorlienzo (cl), 25
colorpincel (cpl), 25
cos, 27

S
salir, 32
sen, 27
si, 30
sino, 30

D
derecha (der), 23
direccin (dir), 23

T
tamaoletra, 26
tamaolienzo (tl), 25
tan, 27

E
escribir, 26
esperar, 30
G
grosorpincel (gpl), 24
I
ir, 23
irx (ix), 23
iry (iy), 24
izquierda (izq), 23
L
levantarpincel (lpl), 24
limpiar (lmp), 25
M
mensaje, 28
mientras, 31
mod, 27
mostrartortuga (mt), 26
O
obtenerdireccin, 23
obtenerx, 24
obtenery, 24
ocultartortuga (ot), 26

42

Vous aimerez peut-être aussi