Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE INGENIERA
ESCUELA DE CIENCIAS Y SISTEMAS
LENGUAJES FORMALES Y DE PROGRAMACIN
Catedrtica
Inga. Damaris Campos de Lpez
Inga. Zulma Aguirre
Tutor acadmico
Eiji De Paz
Luis Fernando Lara Lemus
Nota:
def
__init__
self
Atributos: son caractersticas que identifican a un objeto. Para el lenguaje LF-Py es obligatorio
que cada clase, es decir cada cuento, tenga los siguientes atributos o variables:
o titulo: esta variable contendr el nombre o ttulo del cuento.
o cuento: esta variable contendr el texto del cuento completo, el cual ser mostrado y
traducido a voz en el mdulo Maestro/Padre (Explicado ms adelante).
o imagen: esta variable o atributo almacena la ruta donde se encuentra la imagen de
portada del cuento.
o tipoVoz: esta variable le podemos asignar 2 valores
Female: la voz que escuchar el usuario final ser de una mujer.
Male: la voz que escuchar el usuario final ser de un hombre.
o volumen: numero comprendido entre 0 y 100 que representa el volumen de las bocinas.
o velocidad: numero comprendido entre -10 y 10 que representa la velocidad con la cual
se escuchar la narracin (-10 es muy lento, 10 es rpido y 0 normal).
o Para crear un atributo o variable NO es necesario declararlo, basta con asignarle un
valor inicial y automticamente se crear nuestra variable.
o Es obligatorio asignarle un valor inicial a nuestra variable para que se cree.
o Es posible declarar N variables con su valor respectico en una sola lnea.
o Dentro de cualquier mtodo o funcin, incluyendo el constructor, es posible hacer
referencia a un atributo con la palabra reservada self, fuera de cualquier mtodo o
funcin no es posible.
Nota:
True
False
Cadenas
Caracter
Mtodos: utilizados para gestionar nuestra aplicacin, la cual cuenta con 3 mtodos propios, los
cuales pueden estar presentes en una clase en cualquier orden, y como se mencion darn
funcionalidad a nuestro programa.
o Mtodos obligatorios:
traducir_a_voz: este mtodo cuenta con un atributo obligatorio llamado
traduccion el cual le dir a nuestro lenguaje, por medio de la palabra reservada
True o False que la traduccin de texto a voz estar o no disponible en el ModoMaestro/Padre.
mostrar_texto_cuento: este mtodo cuenta con un atributo obligatorio llamado
texto el cual le dir a nuestro lenguaje, por medio de la palabra reservada True o
False si el texto de nuestro cuento se muestra o no en el Modo-Maestro/Padre.
resaltar_palabra: este mtodo cuenta con un atributo obligatorio llamado resaltar
o
o
Operacin
Suma
Resta
Multiplicacin
Divisin
Agrupacin
Operador
+
*
/
()
Ecuacin
2*5+1
(2+4)*2
10/5*3
Resultado
11
12
6
Interfaz grfica:
La herramienta a desarrollar contar con 2 modos de ingreso, una para el usuario desarrollador y el otro para
maestros o padres de familia que usarn la aplicacin.
Pantalla de Inicio:
Esta pantalla da la bienvenida al usuario, y le pide ingresar a
cualquiera de los 2 modos, segn el modo seleccionado, se debe
abrir otra ventana que mostrar las opciones correspondientes.
NOTA: se debe validar que si es la primera vez que se ingresa a la
aplicacin, el modo Maestro/Padre no est disponible hasta que
desarrollador haya definido el comportamiento de la aplicacin.
un
Modo-Desarrollador
Al igual de como se ha venido trabajando, la
herramienta contar con un editor de texto el
cual podr manejar pestaas, es decir, abrir,
guardar y escribir en cualquier pestaa los
archivos con extensin .py; se debe contar con
la opcin de ayuda (ayuda de la aplicacin en
pdf y datos del estudiante). Adicional a esto, se
contar con estos botones:
o A. Lxico: botn que inicia el anlisis
lxico.
o A. Sintctico: botn que inicia el
anlisis sintctico.
o Generar Archivos: botn que, al haber algn error, ya sea en la fase lxica o sintctica, muestre
los errores en una tabla HTML, se adjunta ejemplo en la seccin, archivos de salida.
Modo-Maestro/Padre
Es en este modo donde el usuario final podr hacer uso realmente de la aplicacin, pues se tendr que
crear y mostrar de una forma ordenada y creativa los cuentos que el usuario desarrollador haya definido.
Funcionalidades:
o Reproducir cuento: con este
botn la aplicacin ser capaz
de traducir el texto, definido por
el usuario desarrollador, a voz,
siempre y cuando haya sido
definido como True la variable
traduccion en el mtodo
traducir_a_voz.
o Mostrar cuento: debe
mostrarse el cuento definido
por el usuario desarrollador en
alguna etiqueta o rea de texto,
para que el usuario final pueda
leerlo, siempre y cuando haya sido definida la variable texto como True en el mtodo
mostrar_texto_cuento.
o Resaltar palabras: debe de pintarse de color verde, en el texto del cuento mostrado, la palabra
que se est escuchando actualmente, todo en tiempo real, siempre y cuando este definida la
variable resaltar como True en el mtodo resaltar_palabra.
NOTA: es indispensable que la aplicacin pueda traducir el texto a voz, no se permite reproducir algn
archivo de audio que contenta el cuento narrado.
NOTA: el usuario desarrollador puede definir N cuentos, y debe mostrarse todos en una forma ordena con
su nombre e imagen. Se recomienda mostrarlo en forma de tabla o lista.
Archivos de Salida:
El archivo de Tokens se debe mostrar en una pgina HTML, la informacin en una tabla como se
muestra a continuacin:
#
1
2
3
Fila
09
02
07
Columna
25
02
15
Lexema
class
tipoVoz
def
Id Token
11
12
13
Token
inicioClase
variable
inicioMetodo
El archivo de Errores, si existieran, se debe mostrar en una pgina HTML con la informacin en una tabla
como se muestra a continuacin:
Lxicos:
#
1
2
3
Fila
05
08
10
Columna
10
30
05
Fila
05
18
10
Columna
10
03
05
Carcter
|
Descripcin
Desconocido
Desconocido
Desconocido
Sintcticos:
#
1
2
3
Descripcin
Se esperaba { despus del identificador
Se esperaba + despus de un numero
Se esperaba __ en el mtodo constructor
Manual de Usuario
Manual Tcnico, debe incluir la definicin de los tokens (IdToken, Token, patrn Exp.Reg.-) y el DFA (por el
mtodo del rbol a partir de las Expresiones Regulares de los tokens definidos) que se use para el analizador
lxico.
Adicionalmente se debe incluir la Gramtica tipo 2 (a mano o computadora) utilizada para resolver el anlisis
sintctico.
Este proyecto se deber desarrollar utilizando Visual Basic .Net con Visual Studio 2013.
El proceso de obtener tokens, se debe hacer a travs de la implementacin del autmata finito determinista
obtenido por medio del mtodo del rbol y desarrollado por el propio estudiante.
Es obligatorio implementar el analizador sintctico con base a la gramtica tipo 2 que se incluya en la
documentacin.
No se puede agregar o quitar algn smbolo en el archivo de entrada. El proyecto deber funcionar con los
archivos de prueba que se disponga para la calificacin, sin modificacin.
La calificacin del proyecto ser personal y durar como mximo 30 minutos, en un horario que
posteriormente ser establecido. Se debe tomar en cuenta que durante la calificacin no podrn estar
terceras personas alrededor, de lo contrario no se calificar la prctica.
No se dar prrroga para la entrega del proyecto.
Copia parcial o total tendr una nota de 0 puntos, y se notificar a la Escuela de Sistemas para que
se apliquen las sanciones correspondientes.
En el caso de no cumplir con alguna de las indicaciones antes mencionadas, NO se calificar el
proyecto; por lo cual, se tendr una nota de cero puntos.
Fecha de entrega: 03 de Mayo de 2016
Anexos:
A continuacin se muestra algunos ejemplos de archivos de entrada.