Beruflich Dokumente
Kultur Dokumente
Gira 90 grados a la derecha Avanza 50 unidades Retrocede 50 unidades Gira a la izquierda 45 Posiciona la tortuga en la direccin absoluta x=30 y=30. (Hay que tener en cuenta que el centro es x=0 y=0) Setx 100 Mueve la tortuga horizontalmente hasta x=100 Sety 100 Mueve la tortuga verticalmente hasta y=100 Setheading 15 Orienta a la tortuga 15 absolutos Arc 90 30 Dibuja un arco de circunferencia con la tortuga en el centro, movindose en el sentido del reloj un ngulo de 90 y de radio 30 unidades Home Sita la tortuga en la posicin inicial Clean Borra todas las lneas de la pantalla pero mantiene la posicin de la tortuga Clearscreen Borra todas las lneas y sita a la tortuga a su posicin inicial Label hola Escribe hola Penup La tortuga no dejar rastro al moverse Pendown La tortuga dibujar cuando se mueva Penerase La tortuga borra la lnea por la que se mueve Penpaint La tortuga vuelve a pintar lneas Setpencolor 4 Pone el color de la lnea en rojo (ver tabla de colores para saber la correspondencia entre nmeros y colores) Setpensize 22 Establece un nuevo grosor de la lnea. A mayor nmero mayor grosor Setbackground 2 Pone el color del fondo de la pantalla de color azul Load ejemplo.txt Ejecuta los comandos del fichero ejemplo.txt Bye Sale del programa UCB Logo
Primitivas Argumentos
Uso Mueve la tortuga hacia adelante n pasos en la direccin que actualmente est mirando. Mueve la tortuga hacia atrs n pasos en la direccin que actualmente est mirando. Gira la tortuga n grados hacia la derecha de la direccin que actualmente est mirando. Gira la tortuga n grados hacia la izquierda de la direccin que actualmente est mirando.
avanza av
n: nmero de pasos
retrocede re
n: nmero de pasos
giraderecha gd
n: ngulo
giraizquierda gi
n: ngulo
En esta segunda tabla el movimiento se controla mediante coordenadas en la pantalla. Para ver mejor dichas coordenadas, se dispone de la primitiva cuadrcula, que muestra una cuadrcula en pantalla de las dimensiones deseadas, y ejes, que muestra los ejes cartesianos con las correspondientes etiquetas:
Primitivas
Argumentos
Uso
cuadrcula
a b: nmeros
Dibuja una cuadrcula en el rea de dibujo de dimensiones a x b y borra la pantalla Quita la cuadrcula del rea de dibujo y borra la pantalla
borracuadrcula
no
Establece el color de la poncolorcuadrcula primitiva, lista cuadrcula del rea de pcc o numero dibujo colorcuadrcula no Devuelve el color actual de la cuadrcula. Dibuja los ejes cartesianos (X e Y) de escala (separacin entre marcas) a, con las etiquetas correspondientes.
ejes
a: nmero
ejex
a: nmero
Dibuja el eje de abscisas (eje X) de escala (separacin entre marcas) a, con las etiquetas correspondientes. Dibuja el eje de ordenadas (eje Y) de escala (separacin entre marcas) a, con las etiquetas correspondientes. Quita los ejes del rea de dibujo y borra la pantalla
ejey
a: nmero
no
primitiva, lista Establece el color de los o numero ejes en el rea de dibujo no Devuelve el color actual de los ejes. Lleva la tortuga a la posicin original, es decir coordenadas [0 0] con rumbo 0. Devuelve las coordenadas X e Y de la posicin actual de la tortuga. Mueve la tortuga a las coordenadas especificadas por los dos nmeros en la lista (x es la abscisa, y la ordenada). Mueve la tortuga horizontalmente hasta el
centro
no
posicin, pos
no
ponposicin, ponpos
ponx
x: eje x
punto de abscisa x pony y: eje y Mueve la tortuga verticalmente hasta el punto de ordenada y
ponxy
x y: Idntico a ponpos [x y] x e coordenadas x y son nmeros, no una lista. e El punto definido por las coordenadas de la lista se resaltar con el color del lpiz.
punto
a: lista
Esta tercera tabla muestra las primitivas que controlan el rumbo, direccin en grados respecto de la vertical y mirando hacia arriba: Primitivas Argumentos
rumbo no
Uso
Devuelve el rumbo o el ngulo de la tortuga. Orienta la tortuga en la direccin especificada. 0 corresponde a mirar hacia arriba verticalmente. La lista debe contener dos nmeros que representen coordenadas. Devuelve el rumbo que la tortuga deber seguir hacia el punto definido por las coordenadas.
ponrumbo, ponr
n: rumbo
hacia
a: lista
distancia
a: lista
La lista debe contener dos nmeros que representen coordenadas. Devuelve el nmero de pasos desde la actual posicin y el punto definido por las coordenadas.
Esta tabla descrine las primitivas que permiten ajustar las propiedades de la tortuga. Por ejemplo, estar visible en la pantalla? Con qu color dibujar cuando se mueva? Primitivas Argumentos Uso
Hace que la tortuga se vea en pantalla. Hace invisible a la tortuga. La tortuga dibujar una lnea cuando se mueva. La tortuga no dibujar cuando se mueva. La tortuga borrar toda traza que encuentre. Pone la tortuga en "modo inverso", y lpiz abajo. Pone la tortuga en el modo normal de dibujo y lpiz abajo. Cambia el color del lpiz. La especificacin del color se detalla en la seccin 5.1.4
inviertelpiz, ila no
ponlpiz, pla
poncolorlpiz, poncl
pongrosor
n: nmero
Define el grosor del trazo del lpiz (en pixels). Por defecto es 1. La forma es cuadrada. Devuelve el color actual del lpiz. Devuelve el color del punto definido por las coordenadas. Devuelve el grosor del lpiz. Fija la forma del lpiz: pfl 0: cuadrada; pfl 1: ovalada. Devuelve la forma del lpiz. Puedes elegir tu tortuga preferida en la segunda etiqueta del men Herramientas Preferencias, pero tambin es posible con ponforma. El nmero n puede ir de 0 a 6. (0 es la forma triangular del LOGO tradicional). Devuelve un nmero que representa la forma actual de la tortuga.
colorlpiz, cl
a: lista
ponforma, pforma
n: nmero
forma
no
Finalmente, las primitivas que controlan la escritura en pantalla, los mensajes al usuario y simplifican determinados dibujos:
Primitivas Argumentos
a: palabra o lista
Uso
Dibuja la palabra o lista especificada, en la posicin actual, y en la direccin que est mirando. Devuelve, en pxels, la longitud que tendr en pantalla la lista. Cuando se escribe con la primitiva rotula, modifica el tamao de la tipografa. Por defecto, el tamao es 12. Devuelve el tamao de la tipografa cuando se escribe en pantalla con la primitiva rotula. Muestra una caja de dilogo con el mensaje que est en la lista. El programa se detiene hasta que el usuario hace un click en el botn "Aceptar" Dibuja una circunferencia de radio n alrededor de la tortuga
rotula
largoetiqueta a: lista
ponfuente, pf
n: nmero
fuente
no
crculo
n: radio
arco
n: radio a b: ngulos
Dibuja un arco de circunferencia de radio n alrededor de la tortuga, comprendido entre los ngulos a y b, midiendo desde el rumbo de la tortuga.
Acerca de los colores El color en XLOGO est especificado por una lista de tres nmeros [r v a] comprendidos entre 0 y 255. El nmero r es el componente rojo, v el verde y a el azul ([r g b] en ingls). XLOGO tiene 17 colores predefinidos, a los que se puede referir con un nmero, con su lista [r v a] o con una primitiva. Las primitivas correspondientes son: Nmero Primitiva 0 1 2 3 4
negro rojo verde amarillo azul
[R V A]
[0 0 0] [255 0 0] [0 255 0] [255 255 0] [0 0 255]
Color
5 6 7 8 9 10 11 12 13 14 15 16
magenta
[255 0 255]
[0 255 255] [255 255 255] [128 128 128] [192 192 192] [128 0 0] [0 128 0]
Azul oscuro
[0 0 128]
Animacin Existen dos primitivas llamadas animacin y refresca (por compatibilidad con otras versiones de LOGO se mantiene la forma en infinitivo refrescar) que permiten escribir rdenes sin que la tortuga las realice. Primitivas
animacin
Uso Se accede al modo de animacin. Detiene el modo animacin, retornando al modo normal. En modo de animacin, ejecuta las rdenes y actualiza la imagen
detieneanimacin
refresca
Propiedades del Histrico de Comandos Esta tercera tabla define las primitivas que permiten ajustar las propiedades de texto del rea del histrico de comandos. Aquellas primitivas que controlan el color y tamao de este rea, slo estn disponibles para ser usadas por las primitivas escribe y tipea.
Primitivas
Argumentos
Uso Borra el rea de comandos, y el rea del Histrico de comandos. Muestra en el Histrico de Comandos el argumento indicado, a. Idntico a escribe, pero el cursor queda en la linea donde se mostr el contenido del argmento. Define el tamao de la tipografa del rea del Histrico de comandos. Slo disponible para ser usada por la primitiva escribe. Devuelve el tamao de la tipografa usada por la primitiva escribe.
borratexto, bt
no
escribe, es
tipea mecanografa
ponfuentetexto, pft
n: nmero
fuentetexto, ftexto
no
poncolortexto, pctexto
Define el color de la tipografa del rea del a: nmero o Histrico de comandos. lista Slo disponible para ser usada por la primitiva escribe.
colortexto
no
Devuelve el color de la tipografa usada por la primitiva escribe en el rea del Histrico de comandos. Selecciona la tipografa nmero n para escribir en el rea del Histrico de comandos con la primitiva escribe. Puedes encontrar la relacin entre fuente y nmero en el men Herramientas Preferencias Fuente. Devuelve una lista con dos elementos. El primero es un nmero correspondiente a la fuente utilizada para escribir en el rea del Histrico de comandos con la primitiva escribe. El segundo elemento es una lista que contiene el nombre de la fuente.
nombrefuentetexto, nft
no
ponestilo, pest
lista o palabra
Define los efectos de fuente para los comandos en el Histrico de comandos. Puedes elegir entre siete estilos: ninguno, negrita, cursiva, tachado, subrayado, superndice y subndice. Si quieres aplicar varios estilos a la vez, escrbelos en una lista. Mira los ejemplos al final de la tabla. Devuelve una lista que contiene todos los efectos de fuente utilizados por las primitivas escribe y tipea.
estilo,
no
Determina la proporcin de pantalla ocupada por el rea de Dibujo y el Histrico de Comandos. n: nmero ponseparacin, ponsep comprendido Si n vale 1, el rea de entre 0 y 1 Dibujo ocupar toda la pantalla. Si n vale 0, ser el Histrico quien la ocupe.
separacin
no
Devuelve el valor de la proporcin de pantalla ocupada por el rea de Dibujo y el Histrico de Comandos.
a b: booleanos
no
a: booleano
Esta es la lista de los comandos relacionados con nmeros: Primitivas Argumentos a b: nmeros a sumar Uso Devuelve el resultado de sumar a y b.
suma, +
diferencia, - a b: nmeros
a restar b de a. cambiasigno, cs producto, * divisin, div,/ a: nmero a b: nmeros a b: nmeros a b: nmeros enteros a b: nmeros enteros a: nmero a: nmero a b: nmeros Devuelve el opuesto de a. Devuelve el resultado de multiplicar a por b Devuelve el resultado de dividir a por b Devuelve el resultado de la dividisin entera de a entre b
cociente
resto
Devuelve el resto de la divisin de a por b Devuelve el entero ms prximo al nmero a Devuelve el entero inmediatamente anterior al nmero a Devuelve a elevado a la potencia b Devuelve la raiz cuadrada de a. Devuelve el logaritmo decimal de a. Devuelve el seno del nmero a.
redondea
truncar, trunca
potencia
coseno, cos
a: nmero tangente, tan en grados arcocoseno, acos arcoseno, asen a: nmero a: nmero
Devuelve el ngulo, en grados, cuyo coseno vale a. Devuelve el ngulo, en grados, cuyo seno vale a. Devuelve el ngulo, en grados, cuya tangente vale a. Devuelve el nmero (3.141592653589793) Devuelve un nmero al azar mayor o igual que 0 y menor que a. Devuelve el valor absoluto (distinto de cero) del nmero a
azar
absoluto, abs
lista
a b
frase, fr
a b
a b: a cualquiera Inserta a en la primera , b lista posicin de la lista b. a b: a cualquiera Inserta a en la ltima , b lista posicin de la lista b a: lista Invierte el orden de los elementos de la lista a Si a es una palabra, devuelve una de las letras de a al azar. Si a es una lista, devuelve uno de los elementos de a al azar.
elige
a: palabra o lista
quita
lista b, si aparece dentro. Si b es una palabra, devuelve la letra a de la palabra (1 seala la primera b lista o palabra letra). Si b es una lista, devuelve el elemento nmero a de la lista. Si a es una lista, devuelve toda la lista menos el ltimo elemento. Si a es una palabra, devuelve la palabra sin la ltima letra. Si a es una lista, devuelve toda la lista menos el primer elemento. Si a es una palabra, devuelve la palabra sin la primera letra. Si a es una lista, devuelve el elemento de la lista. Si a es una palabra, devuelve la ltima letra de la palabra. Si a es una lista, devuelve el primer elemento de la lista. Si a es una palabra, devuelve la primera letra de la palabra. Investiga a en b Dada la lista l1, inserta en
elemento
ltimo
a: palabra o lista
primero, pr
a: palabra o lista
miembro agrega
a b l1: lista
n: nmero la posicin nmero n la l2: palabra o lis palabra o lista l2. ta Ejemplo: agrega [a b c] 2 8 proporciona [a 8 b c] l1: lista n: nmero l2: palabra o lis ta Ejemplo: reemplaza [a b c] 2 8 proporciona [a 8 c] Si a es una palabra, devuelve el nmero de letras de a. Si a es una lista, devuelve el nmero de elementos de a. Dada la lista l1, reemplaza el elemento n por la palabra o lista l2.
reemplaza
cuenta
a: palabra o lista
Booleanos Puede ser cierto o falso. Un booleano es la respuesta a las primitivas terminadas con ?
Primitivas cierto falso palabra? Argumentos Uso
cualquiera Devuelve "cierto cualquiera Devuelve "falso a Devuelve cierto si a es una palabra, falso si no.
numero?
Devuelve cierto si a es un nmero, falso si no. Devuelve cierto si a es un nmero entero, falso si no. Devuelve cierto si a es una lista, falso si no. Devuelve cierto si a es una lista vaca o una palabra vaca, falso si no. Devuelve cierto si a y b son iguales, falso si no. Devuelve cierto si a est antes que b siguiendo el orden alfabtico, falso si no. Si b es una lista, determina si a es un elemento de b. Si b es una palabra, determina si a es un caracter de b. Devuelve la palabra cierto si el lpiz est abajo, falso si no.
entero?
a: nmero
lista?
vaco?
iguales?
a b
antes?, anterior?
a b: palabras
miembro?
a b
visible?
Devuelve la palabra cierto si cualquiera la tortuga est visible, falso si no. Devuelve cierto si la palabra a: palabra es una primitiva de XLOGO, falso si no.
primitiva?, prim?
Devuelve cierto si la palabra procedimiento?, a: palabra es un procedimiento definido proc? por el usuario, falso si no. Devuelve cierto si la palabra variable?, var? a: palabra es una variable definida por el usuario, falso si no. Devuelve cierto si la cuadrcula est activa, falso si no. Devuelve cierto si est activo el eje de abscisas (eje X), falso si no. Devuelve cierto si est activo el eje de ordenadas (eje Y), falso si no.
cuadrcula?
no
ejex?
no
ejey?
no
Variables globales: estn siempre accesibles desde cualquier parte del programa. Variables locales: slo son accesibles dentro del procedimiento donde fueron definidas.
En esta implementacin del lenguaje LOGO, las variables locales no son accesibles desde un sub-procedimiento. Al finalizar el procedimiento, las variables locales son eliminadas.
Primitivas
Argumentos
Uso
haz
Si la variable local a existe, se a b: a palabra, le asigna el valor b. Si no, b cualquiera ser la variable global a la asignada con el valor b. a: palabra Crea una variable llamada a. Atencin: la variable no es inicializada. Para asignarle un valor, hay que usar haz.
local
hazlocal
Crea una nueva variable a b: a palabra, llamada a y le asigna el valor b cualquiera b. Define un nuevo procedimiento llamado palabra1, provisto de las palabra1 lista2 variables contenidas en lista3 lista2 y las instrucciones a ejecutar contenidas en lista3. a: palabra Elimina el procedimiento cuyo nombre es a. Reenva el valor de a. cosa "a y :a son notaciones equivalentes Elimina la variable a. Elimina todas las variables y procedimientos actuales. Enumera todos los procedimientos actualmente definidos. Enumera todas las variables actualmente definidas.
define, def
borra, bo
cosa, objeto
a: palabra
ejecuta
a: lista
Manejo de archivos
Primitivas Argumentos Uso Lista el contenido del directorio actual. (Equivalente al comando ls de Linux, dir de DOS) Especifica el directorio actual. La ruta debe ser absoluta. El directorio debe especificarse dentro de una lista, y la ruta no debe contener espacios. Cambia el directorio de trabajo desde el directorio actual (ruta relativa). Puede utilizarse .. para referirse a la ruta del directorio superior.
catlogo, cat
no
pondirectorio, pondir
l: lista
directorio, dir
no
Da el directorio actual. Por defecto, es /home/tu_nombr e en Linux, C:\WINDOWS en Windows. Guarda en el archivo a los procedimientos especificados en l, en el directorio actual. (Ver ejemplo) Guarda en el archivo a todos los procedimientos definidos, en el directorio actual. (Ver ejemplo) Abre y lee el archivo a.
guarda
a: palabra, l: lista
guardatodo
a: palabra
carga
a: palabra
abreflujo
n: nmero, a: nombre_ficher o
Para poder leer o escribir en un fichero, es necesario crear un flujo hacia l. El argumento nombre_fichero debe ser su nombre, que se refiere al directorio de trabajo. El argumento n es el nmero que identifica a ese flujo. Carga una lista con los flujos abiertos indicando su identificador Abre el flujo cuyo identificador es n, y lee una lnea del fichero Abre el flujo cuyo identificador es n, despus lee un caracter del fichero. Esta primitiva devuelve el nmero correspondiente al caracter unicode (como leecar - sec. 10.1) Escribe la lnea de
listaflujos
l: lista
leelineaflujo
n: nmero
leecarflujo
n: nmero
escribelineafluj
n: nmero,
l: lista
texto indicada en l al principio del fichero indicado por el flujo n. Atencin: la escritura no se hace efectiva hasta que se ciera el fichero con cierraflujo. Escribe la lnea de texto indicada en l al final del fichero indicado por el flujo n. Atencin: la escritura no se hace efectiva hasta que se ciera el fichero con cierraflujo. Cierra el flujo n. Devuelve cierto si se ha llegado al final del fichero, y falso en caso contrario. Carga el archivo de imagen indicado por la palabra.
agregalineaflujo
n: nmero, l: lista
cierraflujo
n: nmero
finflujo?
n: nmero
cargaimagen, ci
a: palabra