Vous êtes sur la page 1sur 4

Lenguaje L-00

1. Notacin bsica Identificadores: Comienza por una letra seguida de una secuencia de letras y dgitos. Consideramos el subrayado ( _ ) como si fuese una letra, aunque no se permite la definicin de un identificador que solo contenga subrayados. Ejemplos de identificadores vlidos: aux1 valor_total perSONA El lenguaje es sensible a maysculas, por lo que los identificadores en maysculas y minsculas (o mezcla de ambas) son distintos. Quedan reservados todos los identificadores que coincidan con alguna de las palabras clave del lenguaje. Nmeros enteros: Son nmeros sin parte fraccionaria. Ejemplos: 0 123 Nmeros reales: Hay dos formas de expresarlos: 1) secuencia de dgitos separados por un punto. La parte entera y la parte fraccionaria pueden ser vaca, pero no las dos a la vez. Ejemplos: 1.12 12. .123 2) en forma cientfica: un base (en notacin real o entero) seguido de un exponente (nmero entero con signo), siendo el nmero expresado el valor de base*10exponente. La base y el exponente estn separadas por el carcter 'E' o 'e'. Ejemplos: 3E-12 .4e+2 2.3e+1 Carcter: Se representa con el smbolo entre comillas simples y no puede contener secuencias de escape. Ejemplo: '' 'a' Comentarios anidados: -1-

Cualquier secuencia de caracteres delimitados por los smbolos (* y *). Los comentarios sern ignorados. Ejemplo: (*primer comentario (*segundo comentario anidado en el primero*)*) 2. Estructura de un programa La estructura de un programa ser de la siguiente forma: Constantes ..... Variables .... Principal .... Fin principal Todos los elementos que forman cada uno de los bloques anteriores va seguido de un ; Todas las secciones anteriores son opcionales menos Principal En la seccin Constantes se establece la declaracin y valores de las constantes. Una constante simblica se define asociando una expresin constante a un identificador. Una expresin constante es una expresin que no contiene variables. Ejemplo: Constantes Cte1 = -1E-12; Codigo = 'A'; Voltaje = Cte1 * Codigo; En la seccin de Variables se declaran el tipo de datos de las variables. Los posibles tipos de datos son Entero, Real y Caracter. Ejemplo: Variables V1: Real; _identi: Carcter; var1: Entero; En la seccin Principal van las sentencias (cada una de ellas seguida de un ;). 3. Expresiones Aritmticas: Opera operandos enteros y reales. Si en la expresin aparece solo operandos enteros, el resultado de la expresin es entero, en caso contrario es real. Los operandos binarios: +,-,*,/ Operando unario: Relacionales: Las expresiones relacionales producen resultados lgicos. Se puede comparar carcter con carcter y nmero con nmero. Los operandos son: <, >, <=, >=, = y != Lgicas: Toman operandos lgicos y produce resultados lgicos.

-2-

Los operandos son binarios son: & y |. El primero es una AND lgica y el segundo una OR. El operador unario es: !. Es el operador de negacin. 4. Sentencias Asignacin: Las expresiones de la parte izquierda y derecha de la asignacin deben ser de tipos iguales, a excepcin de un entero a una variable real la cual s ser permitida. Ejemplo: A:=3; Var1 := 1+4; Mientras: La estructura repetitiva Mientras tiene la siguiente estructura: Mientras ( <E> ) <S> Fin mientras Donde <E> es una expresin que produce un valor lgico y <S> un grupo de sentencias. Se ejecuta las sentencias <S> mientras <E> sea cierto. Si - Si no: La estructura es la siguiente: Si (<E>) <S1> si no <S2> Fin si Donde <E> es una expresin que produce un valor lgico y <S1> y <S2> son grupos de sentencias. Se ejecutar <S1> si <E> es cierta y si es falsa se ejecutar <S2>. 5. Ejemplo Un algoritmo escrito en el lenguaje es el siguiente: (*-----------------------------------------------------------*) (*---------- programa de prueba -----------------------*) (*-----------------------------------------------------------*) (*---------- bloque de constantes-----------------------*) Constantes Tam=40; (*---------- bloque de variables-----------------------*) Variables i, j: entero; (*---------- bloque Principal-----------------------*) Principal i:=0; j:=50; Mientras (i <=100) i:=i+1;

-3-

Si (i < j) i := i*2; j := j-1; si no i := i +3; Fin si Fin mientras Fin principal

-4-