Consideren que a ustedes les dan el siguiente "juego de ahorcado"
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
donde el mensaje oculto es: "UN FANTASMA RECORRE EUROPA"
Si probamos letra por letra para cada posición, tendríamos que probar 27^23 posibilidades: cometeríamos una gran cantidad de errores; muchos de ellos completamente innecesarios, pues probaríamos combinaciones como XE PPQOLBAJ ÑLTUOQV RRKZIW.
Las preguntas que deben responder son las siguientes:
1)Si conocemos todas las palabras del español, y las probamos una a una siempre que sean del tamaño correcto ¿cuantos errores cometeríamos?
a)como máximo
b)en promedio sobre todos los posibles ordenes para probar las palabras.
2)Si probamos letra por letra pero tomando en cuenta las palabras válidas en el español (como hicimos en clase), ¿cuantos errores cometeríamos?
a)como máximo, es decir, usando el orden más desafortunado para este ejemplo.
b)usando el orden lexicográfico (cómo el diccionario) de las palabras.
Les adjunto una lista de palabras que encontré por ahí, si ustedes encuentran una mejor por favor súbanla a algún lado (o envienla) y comenten en el blog al respecto. Aquí hay otra lista que Leonardo nos pasó y que al parecer contiene más palabras y no tiene el problemilla con los acentos. En ambas listas yo agregué a mano la palabra 'recorre'... tratando de adivinar lo mejor posible la etiqueta que le sigue.
Si encuentran alguna forma alternativa a las expuestas en 1) y 2) tambien pruébenla y envíen sus resultados, o si creen que hay algún ordenamiento de las palabras que sea más conveniente para la mayoría de los casos también repórtenlo.
Aunque no tienen que hacerlo con la computadora, hay dos razones por las que les sugerimos lo hagan:
1) Es más rápido encontrar el resultado o una buena aproximación.
2) Aprenderán nuevas técnicas para resolver problemas.
Los 'lineamientos' para entregar la tarea son los siguientes:
Sobre los equipos.
1)Es en equipos de máximo 5 personas.
2)Los equipos deben ser 'multidiciplinarios'. Este es un punto importante, a menos que no haya de otra (y no estoy seguro de que sea así) para integrar un equipo se necesita que haya en él al menos un computólogo (preferiblemente con conocimientos de estructuras de datos). Este no va a ser el mono programador del equipo, sino que va a aportar a lasdiscusiones las consideraciones computacionales pertinentes. Además de que, en caso de que decidan hacerlo en la compu, es necesario alguien que sepa programar.
Sobre lo que hay que entregar.
3)Preferíamos no revisar código. Las respuestas a las preguntas si tienen que entregarlas.
4)Deben anexar una explicación en palabras del procedimiento que usaron. Preferiblemente no debe ser escrita por las personas que programaron.
5)Entreguen en papel, o en formatos electrónicos: pdf, ps, odt, texto plano.
6)Por supuesto, pongan el nombre de los integrantes del equipo!
De la fecha de entrega
7) Tienen hasta el 10 de septiembre para entregarlo. Es decir, tienen hasta dos fines de semana :D
a)como máximo
b)en promedio sobre todos los posibles ordenes para probar las palabras.
2)Si probamos letra por letra pero tomando en cuenta las palabras válidas en el español (como hicimos en clase), ¿cuantos errores cometeríamos?
a)como máximo, es decir, usando el orden más desafortunado para este ejemplo.
b)usando el orden lexicográfico (cómo el diccionario) de las palabras.
Les adjunto una lista de palabras que encontré por ahí, si ustedes encuentran una mejor por favor súbanla a algún lado (o envienla) y comenten en el blog al respecto. Aquí hay otra lista que Leonardo nos pasó y que al parecer contiene más palabras y no tiene el problemilla con los acentos. En ambas listas yo agregué a mano la palabra 'recorre'... tratando de adivinar lo mejor posible la etiqueta que le sigue.
Si encuentran alguna forma alternativa a las expuestas en 1) y 2) tambien pruébenla y envíen sus resultados, o si creen que hay algún ordenamiento de las palabras que sea más conveniente para la mayoría de los casos también repórtenlo.
Aunque no tienen que hacerlo con la computadora, hay dos razones por las que les sugerimos lo hagan:
1) Es más rápido encontrar el resultado o una buena aproximación.
2) Aprenderán nuevas técnicas para resolver problemas.
Los 'lineamientos' para entregar la tarea son los siguientes:
Sobre los equipos.
1)Es en equipos de máximo 5 personas.
2)Los equipos deben ser 'multidiciplinarios'. Este es un punto importante, a menos que no haya de otra (y no estoy seguro de que sea así) para integrar un equipo se necesita que haya en él al menos un computólogo (preferiblemente con conocimientos de estructuras de datos). Este no va a ser el mono programador del equipo, sino que va a aportar a lasdiscusiones las consideraciones computacionales pertinentes. Además de que, en caso de que decidan hacerlo en la compu, es necesario alguien que sepa programar.
Sobre lo que hay que entregar.
3)Preferíamos no revisar código. Las respuestas a las preguntas si tienen que entregarlas.
4)Deben anexar una explicación en palabras del procedimiento que usaron. Preferiblemente no debe ser escrita por las personas que programaron.
5)Entreguen en papel, o en formatos electrónicos: pdf, ps, odt, texto plano.
6)Por supuesto, pongan el nombre de los integrantes del equipo!
De la fecha de entrega
7) Tienen hasta el 10 de septiembre para entregarlo. Es decir, tienen hasta dos fines de semana :D
Importante:
Si ustedes quieren que su equipo sea el mismo para el resto del semestre, tambien es importante que integren equipos que cumplan además la condición de no estar integrado únicamente por computólogos.
Salvo por esas restricciones todo lo demás es libre, incluyendo el lenguaje de programación que utilicen. (Si necesitán que (Víctor) les heche la mano con algún problemilla de programación, con gusto lo haré, pero solo entiendo programacion estructurada y orientada a objetos)
Si ustedes quieren que su equipo sea el mismo para el resto del semestre, tambien es importante que integren equipos que cumplan además la condición de no estar integrado únicamente por computólogos.
Salvo por esas restricciones todo lo demás es libre, incluyendo el lenguaje de programación que utilicen. (Si necesitán que (Víctor) les heche la mano con algún problemilla de programación, con gusto lo haré, pero solo entiendo programacion estructurada y orientada a objetos)
Verán que el archivo palabras .txt tiene algunas particularidades, en especial lo que se refiere a los acentos y las eñes, estoy seguro de que podrán decifrarlas. También, después de cada palabra viene una etiqueta que, según entiendo, tiene que ver con el tipo de palabra que es; en todo caso lo acompaño con algunos archivos de documentación que venían incluidos. Si quieren hacer uso de las etiquetas de tipo de palabra para agilizar su programa adelante, aunque les advierto que la gramática española no es sencilla.
Cualquier duda o comentario, por favor háganlo en clase o por el blog para que todos puedan oír/leer la respuesta :)
No hay comentarios:
Publicar un comentario