Logo Gráfico 4.4 - Manuales
LOGO GRAFICO®
Versión 4.4
DESCRIPCION
DEL
LENGUAJE
Edita FUNDAUSTRAL
Gavilán 2116 -1416- CAPITAL FEDERAL - REP. ARGENTINA
Tel. (54 11) 4581-2768
[email protected]
www.fundaustral.com.ar
1
Logo Gráfico 4.4 - Manuales
Descripción del Lenguaje
INSTRUCCIONES DE CONTROL
SALIDA A LA PANTALLA DE TEXTO
ELEMENTOS DEL LENGUAJE LOGO
IDENTIFICADORES
INSTRUCCIONES
FUNCIONES INFIJAS
JERARQUÍA DE LOS PROCEDIMIENTOS Y FUNCIONES
I.-
II.-
III.-
IV.- PROCEDIMIENTOS Y FUNCIONES
V.-
VI.-
VII.- ÁMBITO DE VALIDEZ DE LA VARIABLES
VIII.-
IX.- RECURSIVIDAD
X.-
XI.- ENTRADA/SALIDA A ARCHIVOS DE TEXTO
XII.- PROCESAMIENTO DE LISTAS
XIII.- FUNCIONES LÓGICAS Y DE COMPARACIÓN
XIV.- OPERACIONES NUMÉRICAS
XV.- LISTAS EJECUTABLES. OTRAS ESTRUCTURAS LÓGICAS
XVI.- POSIBILIDADES GRÁFICAS
XVII.- ANIMACIÓN
XVIII.-MOUSE
XIX.- CARGA DE PROGRAMAS Y CONTROL DE ERRORES
XX.- PRIMITIVAS ESPECIALES PARA WINDOWS
XXI.- PUERTOS Y MANDOS
XXII.- SONIDO Y VIDEO
DESCRIPCIÓN DEL LENGUAJE
A continuación damos una descripción de esta versión de LOGO para que el usuario pueda
conocer las características principales de la misma y su diferencia con otras implementaciones de este
lenguaje.
Está dirigida a personas que tienen cierto conocimiento aunque sea elemental de conceptos tales
como "procedimiento", "función", "variable", "instrucción", etc. adquirido por medio del trabajo con otras
versiones de LOGO u otros lenguajes.
Los que no tengan claros estos conceptos pueden adquirirlos recurriendo a la extensa literatura
que existe sobre el tema.
Para el uso del programa se debe consultar las ventanas de ayuda, en las cuales está también las
descripción de todas las primitivas. Ésta se encuentra además en el archivo PRIMITIV.WRI incluido en
el disco de instalación.
I.- ELEMENTOS DEL LENGUAJE LOGO
El lenguaje LOGO trabaja con "palabras" (también llamadas "átomos") que son conjuntos de
caracteres sin blancos y "listas", que son un número finito de palabras dadas en un cierto orden que
serán los elementos de estas listas. También pueden ser elementos de un lista otras listas. Se define
2
además la palabra vacía y la lista vacía.
Ejemplos:
Logo Gráfico 4.4 - Manuales
Palabras o átomos:
-
abcd
*
/
| A
2.85E-3
-4.0
ABC
Listas:
[abc 2 5 [a b] 4]
[1 2 3 4]
Las listas se indican empleando corchetes. Las palabras no pueden contener blancos ni corchetes,
pues estos caracteres se emplean como separadores.
La palabra vacía se representa como " y la lista vacía se simboliza como [ ] .
Cuando en una lista se escriben dos espacios en blanco seguidos (con la barra espaciadora),
LOGO los elimina pues entre un elemento (palabra) y otro este espacio actúa como separador, y alcanza
con uno solo.
Si queremos expresamente dejar lugares en blanco podemos emplear la combinación de teclas
Ctrl + B (de Blanco) que dejan ver en pantalla un puntito al escribirlo, pero luego no se ve. (ver Uso de
los espacios en blanco en IV c.)
Por ejemplo:
[A B
[A B........C](con Ctrl+B) se entiende como
C]Espacios con la barra se interpreta como [A B C]
[A B
C]
Se distinguen mayúsculas de minúsculas en todos los nombres definidos por el usuario, aunque
no en los nombres de las primitivas.
II.-
IDENTIFICADORES
Los nombres de los procedimientos, funciones o variables, también llamados identificadores,
deben contener sólo caracteres alfanuméricos (letras o números) y deben comenzar con una letra.
En el caso de que se los emplee como nombres de procedimientos o funciones, deberán seguir la
misma regla que para los nombres de las variables o contener tan sólo "signos", que son los caracteres:
+ - / * | = < > & ^ _
Se consideran alfanuméricos las letras mayúsculas o minúsculas,
caracteres:
los dígitos numéricos y los
. : " ? @ $ % _ á é í ó ú ñ Ñ ü
No pueden mezclarse en un identificador caracteres alfanuméricos y signos mezclados, excepto
en el identificador de asignación := .
Los identificadores pueden contener hasta 31 caracteres.
No deben incluir ni paréntesis ni corchetes.
III.-
INSTRUCCIONES
3
Las instrucciones LOGO consisten en nombres de procedimientos seguidos por sus argumentos u
operandos (valores sobre los que el procedimiento opera), los que a su vez pueden ser nombres de
funciones seguidas por sus operandos, por ejemplo:
Logo Gráfico 4.4 - Manuales
HACER "a 2.81
le asigna al nombre "a el valor 2.81.
HACER "a :b
e asigna al nombre a el valor de la variable b, lo que se simboliza como :b .
Las instrucciones LOGO pueden consistir en más de una llamada a procedimientos:
HACER "a :b HACER "b 3 HACER "c 5
Cuando un nombre está precedido por los dos puntos (:) nos referimos al valor del mismo y si va
precedido por comillas (") nos referimos al mismo nombre.
Los valores alfanuméricos pueden ir con comillas antepuestas, entre comillas, con após-
trofo antepuesto o entre apóstrofos ("a es lo mismo que "a", 'a ó 'a').
Los números o las palabras alfanuméricas que están incluídas en listas no necesitan ir precedidas
por comillas.
Por ejemplo:
HACER "y 35
o bien
HACER "x [a b c N]
En el primer caso se le asigna a "y el valor numérico 35 que no lleva comillas. Y en el segundo a
"x se le asigna la lista dada cuyos elementos no llevan comillas por estar en una lista.
Las instrucciones se dan por medio del Editor provisto por LOGO GRÁFICO, o desde el modo
comando, pudiendo dar en una sola línea uno o varios llamados a procedimientos:
BT HACER "a 2 HACER "b 4 ESC :a
Esta sucesión de instrucciones pueden concluirse o no con un punto y coma, tal como se explica
en el capítulo siguiente.
Los argumentos de un procedimiento pueden ser también valores devueltos por funciones:
HACER "a SUMA :a 2
HACER "a SUMA :a PROD :b :c
La primera de estas instrucciones le asigna a "a el valor :a más 2 y la otra el valor :a más el
producto de :b por :c . Estas dos instrucciones podrían haberse escrito también con los operadores
infijos '+', '*' y con el operador de asignación infijo := que puede reemplazar a la primitiva HACER (ver
primitivas en las pantallas de ayuda o en el archivo PRIMITIV.WRI):
HACER "a :a + 2
HACER "a :a + :b * :c
equivale a:
equivale a:
'a' := :a + 2
'a' := :a + :b * :c
4
Logo Gráfico 4.4 - Manuales
La palabra vacía puede representarse con ', ' ', " ó " " o emplear la función NIL, que devuelve una
palabra vacía, a fin de dar una mayor claridad a los programas.
El orden de las operaciones se realiza de la misma forma como se resuelve una pila, es decir, se
recorre de izquierda a derecha y cuando se encuentra un operador prefijo seguido por todos sus
operandos o un operador infijo entre sus dos operandos, se ejecuta esta operación y se pone en lugar de
ésta el resultado. Luego se vuelve a recorrer la lista de izquierda a derecha y así sucesivamente hasta
que se la resuelve completamente.
Por ejemplo:
HACER "y RC :a * :b
equivale a asignarle a la variable "y" la raíz cuadrada del producto de :a por :b.
HACER "y ( RC :a ) * :b
equivale a tomar el valor de la raíz de :a, multiplicarlo por :b y asignárselo a la variable "y".
HACER "y :a * RC ( :k * :x )
equivale a tomar la raíz del producto de :k por :x, multiplicarlo por :a y asignárselo a la variable "y"
.
Como se observa, las funciones y procedimientos prefijos tienen siempre la misma jerar-
quía y se ejecutan después de los infijos.
En una instrucción, si un nombre o palabra no está dentro de una lista y no está precedido por los
signos (:) o ("), representa el nombre de un procedimiento o función (prefija o infija). Esta función o
procedimiento puede estar incorporado a la implementación del lenguaje o haber sido definida o
redefinida por el usuario en la forma que se indicará a continuación.
IV.-
PROCEDIMIENTOS Y FUNCIONES
Existen dos clases de procedimientos y funciones: los incorporados, llamados primitivas y los
definidos por el usuario.
a. Primitivas:
Son los que ya existen incorporados dentro de LOGO. La lista de ellos puede verse en las panta-
llas de ayuda o en el archivo PRIMITIV.WRI.
En esta lista las primitivas vienen en letras mayúsculas, pero en esta versión de LOGO pue-
den ser escritas en letras minúsculas, mezclando mayúsculas y minúsculas o intercalando
guiones bajos (_) para una mayor comprensión en la lectura de los programas.
Por ejemplo: 'PONERPRIMERO' es equivalente a 'ponerprimero', 'PonerPrimero',
'PONER_PRIMERO', 'poner_primero' ó 'Poner_Primero'.
Uso de palabras con tilde: Las primitivas que provienen de palabras con tilde pueden usarse sin
él y también escritas en mayúsculas. Por ejemplo, 'ULTIMO' equivale a 'ultimo' o a 'último' .
Los procedimientos y funciones definidos por el usuario deben llamarse textualmente tal como
fueron definidos. Solamente para las primitivas es válido emplear indistintamente mayúsculas, minúscu-
las o vocales acentuadas o intercalar guiones bajos.
5
b. Procedimientos y funciones definidos por el usuario
Logo Gráfico 4.4 - Manuales
Los define el usuario a partir del editor y en casos muy especiales empleando las primitivas
DEFPROC y DEFFUNC para procedimientos y funciones respectivamente.
c. Edición de procedimientos y funciones
Los procedimientos y funciones son editados en un archivo de texto, por ejemplo:
FUNC CUBO :x
RESPUESTA :x * :x * :x
FIN
PARA mensaje
ESCRIBIR [MAL EL VALOR]
FIN
PROC RECTÁNGULO
repetir 2 [ad 40 de 90 ad 50 de 90]
; Estas instrucciones dibujan un rectángulo
fin
Esto se realiza empleando el editor provisto por LOGO GRÁFICO, en el que se ingresa a partir
del modo comando pulsando ALT-D o picando con el mouse en Editor de la barra de menú. Puede
también emplearse cualquier otro editor para escribir las funciones y procedimientos. Cada procedimien-
to o función en el editor comienza con la palabra PARA ó PROC para los procedimientos y FUNC para
funciones, el nombre del mismo y la lista de parámetros. PARA, PROC ó FUNC pueden escribirse con
minúsculas ('para', 'proc' o 'func') pero no mezclando mayúsculas con minúsc
Comentarios de: Logo Gráfico - Descripción del Lenguaje (0)
No hay comentarios