Diseño
y Programación Orientados a Objetos
1er. Sem 2004
Tarea 4: Tómbola en C++ y HTML
En esta tarea usted va a trabajar con plantillad (templates), la
Biblioteca estándar de plantillas (STL) de C++, y algoritmos
genéricos.
Problema: Una tara que con frecuencia nos topamos en los últimos
cursos es la definición de un orden de personas para hacer algo.
Típicamente para hacer la presentación de temas de
seminario, temas de proyectos, etc.
La arquitectura de la solución que usted explorará
(sólo hará una parte), propone el despliegue de una
página HTML via un browser en donde habrá un campo
(formulario) para escribir la lista de los temas, nombres, o lo que
deseemos definir orden. Obviamente se espera que el usuario haga un
cut-and-paste de un archivo de texto o similar para no escribir todo.
Cada línea contendrá una item a permutar. Luego el
browser enviará la lista ingresada en el formulario. De regreso
el sistema retornará una página HTML con una
permutación aleatoria de las líneas formateadas con
números por línea indicando el orden resultante.
En este sistema usted será responsable, en esta tarea, de
desarrollar la base de la CGI que resolverá el problema. Para
ello la especificación de su tarea queda definida como:
Desarrolle un programa en C++ que reciba un archivo de texto por la
entrada estándar y envie por la salida estándar una
permutación aleatoria de las líneas ingresadas. La salida
debe corresponder a código HTML en donde se ha agregado un
número a cada línea. Se pide que el programa sea escrito
en C++, haga uso de un contenedor apropiado y el algoritmos
genéricos.
Sintaxsis: permute
Ayuda: Ver ejemplo
sobre permutaciones aleatorias. y algoritmo random_shuffle