ejercicio

Buenas tardes soy novato en programar en java necesito ayuda con realizar el siguiente ejercicio:

El usuario ingresa una fecha ejemplo:

10/10/2009

El programa debe responder : sábado diez de Octubre de dos mil nueve.

osea debe responder que día de la semana que corresponde la fecha, el rango de años que debe cubrir el programa es de 1900 al 2050, se debe de tomar en cuenta los años bisiestos, se deben utilizar enumeradores para realizar el programar segun profesor.

Agradecere las ideas que puedan aportar y codigos de ejemplo para hacerlo.

Saludos,

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

raro...

qué raro que hayan limitado a esas fechas. En fin. Si a partir de la cadena dd/mm/aaaa (o mm/dd/aaaa, no podemos saber qué debe ir primero a partir de tu ejemplo) construyes una instancia de Date (ayudándote con un SimpleDateFormat) y con eso creas un GregorianCalendar, vas a poder obtener el día de la semana como un número... así que teniendo un arreglo de los días de la semana en español, obtienes el día correspondiente (me parece que GregorianCalendar usa 0 para domingo, 1 para lunes, etc hasta 6 para sábado, así que haces un arreglo donde la primera cadena sea "Domingo").

Puedes tambien tener simplemente un arreglo de 31 cadenas para el día del mes (32 realmente, pero la primera se puede llamar "JAJA" y nunca debe salir) y al GregorianCalendar le pides el día del mes y obtienes la cadena correspondiente, por ejemplo "diez".

Lo mismo va para los meses, debes tener un arreglo de 13 cadenas, la primera puede ser nuevamente "JAJA" o cualquier otra cosa y las otras serán "Enero" a "Diciembre", al GregorianCalendar le pides el mes y despliegas la cadena correspondiente.

Ah y lo del año, por eso piden un límite, para no tener que hacerlo demasiado complicado. Ahí es donde está casi todo el trabajo. Similar al código que ya han pedido y creo que posteado en este sitio para convertir monedas a letra, como para las facturas "un mil quinientos nueve pesos con veinticinco centavos", solamente habría que modificar dicho código para no usar el "un" sino simplemente decir "mil" para los valores entre 1000 y 1999. Y si lo implementas bien, puedes usar ese mismo código para convertir el día del mes en letra. Es cosa de hacer un método que le pases un entero y te devuelva la cadena; si le pasas el dia del mes te debe devolver una cadena entre "uno" y "treinta y uno", y si le pasas el año pues te devolverá algo como "mil novecientos setenta y tres" o "dos mil doce".