Aquí pueden postear las respuestas al tema que viene a continuación. Les remito a las normas del concurso:
http://www.espaciolinux.com/foros-tema-t43462.html
El concurso finalizará el día 20 de octubre del 2009. Tengan en cuenta la diferencia horaria, por eso se recomienda haberlo posteado antes del 19.
Se recuerda que aquí sólo se debe postear código. Para realizar comentarios utilicen el siguiente post:
http://www.espaciolinux.com/foros-tema-t43560.html
La tema del concurso es el siguiente:
Generador de menús
El programa que deben hacer debe generar el código necesario para mostrar un menú en un lenguaje. Evidentemente, al código generado se le deberá añadir algunas cosas para que sea más funcional, pero de eso no se debe encargar la aplicación.
El código generado debe ser capaz de mostrar el menú, esperar una respuesta y devolver un resultado (generalmente un número indicando la opción seleccionada, aunque puede ser otra cosa). Este código generado NO debe obligar a que la opción que se devuelva exista. Sería recomendable que, si la opción escogida no existe, devolviera un código de error indicando que no se ha escogido una opción valida.
Vuestro código (que no el que se genere) NO debe ser interactivo. Toda la información que pueda necesitar (las opciones del menú, ficheros de entrada o salida, etc) se deberá pasar mediante argumentos al programa.
También es importante que se hagan las comprobaciones oportunas (validación de los argumentos, parseo de ficheros, etc), además de comentar debidamente tanto vuestro código como el que se genere.
Opciones de ampliación
Estas son algunas de las posibilidades que tienen para ampliar la aplicación. No es indispensable realizarlas todas, aunque se valorará positivamente la realización de estas ampliaciones.
También pueden poner otras que no estén en esta lista, indicandolo en el código
· Posibilidad de generar el código en más de un lenguaje.
· Posibilidad de pasar las opciones del menú directamente como parámetros o bien en un fichero de texto
· Posibilidad de generar el código para diversos tipos de menú (de terminal, ncurses, gtk...)
· Posibilidad de insertar el código en una línea especificada, y no sólo de generar el código en un archivo en blanco.
· Posibilidad de poner los parámetros de la aplicación en cualquier orden