Hola,
Continuando con las competencias de foros del web, y como me tocaba presentar el nuevo proyecto hace un mes ... creo?!
Estuve buscando diferentes opciones que fueran interesantes, que no fueran demasiado complejas y suficientemente genéricas para que pudiera participar la mayor cantidad de usuarios, así que encontre una asignación del 2008 sobre Ciencias de la Computación que me pareció muy adecuada, espero que sea del agrado de todos y que participen la mayor cantidad de programadores.
Básicamente es un juego de dados diferente.
Se aceptan comentarios y modificaciones a esta presentación !!!
Saludos,
(Ahora yo seleccioné Ruby como lenguaje de programación para mi aplicación)
DESCRIPCION:
============ http://www.cheapass.com/free/games/flip.html
Flip
----
Un juego libre de James Ernest
Para Comenzar: Cada jugador rueda cinco dados de 6-lados. El jugador que rueda el total más bajo va primero.
En Cada Turno: Usted puede hacer una de dos cosas. Usted puede voltear uno de sus propios dados, o usted puede indicarle a su opositor para jugar uno de sus dados en el centro del tablero.
Volteando: Los números de la tapa y de la parte inferior de los dados estándar siempre suma 7; así pues, si usted voltea un 6, se convierte en un 1. Si usted voltea un 3, se convierte en 4.
Jugando: Cuando usted indica a su opositor ponga un dado en el centro, usted elige el dado. Su opositor lo pone en el centro. Entonces él puede retirar cualquier combinación de dados del centro que la suma total sea menor que el valor del dado que él introdujo. Así pues, por ejemplo, si él juega un 5 en el centro, él podría sacar el valor de hasta 4 puntos en cualquier combinación de dados.
Para Ganar: Para ganar la partida, usted debe ser el último jugador sin ningún dado. Para llevar la cuenta sobre varias partidas, apunte la suma total de los dados que a usted le sobraron. En ese caso, puede jugar hasta 50 puntos.
Estancamiento: Para evitar estancamiento, es ilegal voltear el mismo dado dos veces sin indicar a su opositor que juegue un dado en el centro del tablero.
DETALLES TECNICOS:
==================
Se puede utilizar cualquier lenguaje de programación.
El juego debe tener modo para 1 usuario contra la computadora (y a criterio propio también 2 jugadores)
La interface del juego debe ser estrictamente en modo consola (modo texto 80x24).
Si se desea se puede realizar la parte gráfica por aparte con fines demostrativos.
Es indispensable la documentación; y que funcione sin errores. Se deberá calificar el uso correcto de los paradigmas de programación aplicables al lenguaje, la indentación y formato del código. El código no es necesario que sea el más rápido, ni el más complicado, solamente que se ejecute sin problemas, sea usable y “realice lo que tiene que hacer”.
El ganador deberá ser el código que realice el juego en base a las especificaciones, que tenga mayor y mejores detalles, (como por ejemplo, presentar en pantalla el nivel del juego, el estado de partidas ganadas y perdidas, etc.)
En el caso que existan juegos que podrían ser vencedores y claramente del mismo nivel, se solicitará un desempate, haciendo la conexión de red para juegos remotos, en el caso no haya vencedor aún así, se declarará un empate.
(El ganador va a tener 1 karma de mi parte
)
FECHA DE ENTREGA:
=================
La fecha de entrega deberá ser entre el día Sábado 21 de Febrero del año 2009 a las 08:00 GMT, hasta el día Lunes 23 de Febrero a las 18:00 GMT. (Para un total de aproximadamente 2 meses y medio disponibles, con el motivo de obtener la mayor cantidad de participantes)
El código fuente y la documentación deberán ser comprimido en formato .zip (compatible), junto con el ejecutable + librerias, para ejecutarlo sin necesidad de instalación y sin virus :), o a decisión personal en dos archivos diferentes. Y deberá ser posible descargarlo en cualquier momento.
Si fuera necesario instalar un compilador/interprete, framework, run-time, etc.; se deberá especificar el método exacto para poder hacer la instalación adecuada manualmente.
MAYOR INFORMACION:
==================
Original en Inglés
http://nifty.stanford.edu/2008/horst...signment3.html
Google Translate
http://translate.google.com/translat...ml&sl=en&tl=es
Yahoo Babelfish
http://babelfish.yahoo.com/translate...rUrl=Translate