Вы находитесь на странице: 1из 4

BERMUDEZ DIEGO

SEDAN HERRERA EMILY

TRABAJO DE
LENGUAJES
[Subttulo del documento]

ESPECIFICACIN SINTCTICA:
Ejemplos de programa en el lenguaje Clau2
1) void main() {
Mostrar(hola mundo);
}
2) entero suma(entero : a , entero : b) {
entero : c;
c=a+b;
return(c);
}
3) real divisin(){
real : a,b,c;
Leer(a,b);
Si(b0){
c=a/b;
}
Sino{
return(-1);
}
return ( c );
}
A partir de estos ejemplos construimos la sintaxis.
Programa
void main()
{
Bloque}
Funcion

Introduccion
Detalles
Nombre del lenguaje
Esp. Sintactica

tipo
id(parametros){

Esp. Lexicografica

Bloque}

Nulos del lenguaje


Conclusiones

tipo : Puede ser entero, real,natural,boolean,cadena.


id: Es un identificador.
Bloque: es una serie de instrucciones que se manda al compilador.
ESPECIFICACION LEXICOGRAFICA :

Operador Aritmetico :
e.r. L ( r ) = {+,-,/,*,mod}
Automata :
Operador Logico :
e.r.
r=and|or|not
L( r ) = {and,or,not}

Automata :
Operador Relacional:
e.r.
r= <|>|<=|>=|<>
L( r )= {<|>|<=|>=|<> }
Automata:
Identificador:
e.r. r=letra(letra|digito)*
Automata:
Sentencia final:
e.r. r=
L(r )={;}
Automata:
Separador de ID:
e.r. r=,
L( r)= {,}
Automata:
Numero:
e.r. r = digito(digito)*
Automata:
Parentesis Izquierdo:
e.r. r=(
L( r )={ ( }
Automata:
Parentesis derecho:
e.r. r=)
L( r ) = { ) }
Automata:
Corchete izquierdo:
e.r. r= [
L(r )={ [}
Corchete derecho:
e.r. r=]
L(r )= { ] }
Llave izquierda:
e.r. r= {
L( r )={ { }
Automata:
Llave derecha:
e.r. r=}
L( r ) = { } }
Automata:
Palabras reservadas:
e.r. r=entero|natural|real|constante|struct|boolean|verdadero|
falso|cadena|fun|void|main|return|para|si|sino|mientras|Hacer|
Leer|Mostrar|clase
L( r ) = { entero|natural|real|constante|struct|boolean|
verdadero|falso|cadena|fun|void|main|return|para|si|sino|
mientras|Hacer|Leer|Mostrar|clase }
Automata:
Ejemplo del autmata el identificador:
E= ( 0 ,

1 , 2 )

=(Letra,digito)
F=( E j )

M(E, ,

, 0 , F)

Вам также может понравиться