Tarea
Escriba un programa o una función que calcule el nombre del día de la semana de una fecha que ingresa un usuario.
De entrada y salida
Entrada es una cadena, YYYYMMDD.
Ejemplo de valores de entrada:
20110617: 17 de junio de 2011 19040229: 29 de febrero de 1904 06661225: 25 de diciembre de 666 00000101: 1 de enero de 0 99991231: 31 de diciembre de 9999
Puede suponer que todas las entradas son válidas. Tenga en cuenta que el año cero es válido.
La salida es un entero entre 0y 6. Cada entero representa un nombre de día de la semana. Puede decidir libremente qué número entero representa un nombre de día de la semana, como este
0: lunes 1: martes 2: miércoles ... 6: domingo
(en orden) o este
0: lunes 1: miércoles 2: domingo ... 6: sábado
(Desordenado).
Casos de prueba
Entrada Semana-día Salida ([0..6 -> Lunes ... Domingo] se utiliza en este ejemplo). 20110617 viernes 4 19500101 Domingo 6 22220202 Sábado 5 19000228 miércoles 2 19000301 jueves 3 19450815 Miércoles 2 19040229 Lunes 0 19040301 martes 1 17760704 jueves 3 20000228 Lunes 0 20000229 martes 1 20000301 miércoles 2 20121223 domingo 6 00000401 Sábado 5 66660606 miércoles 2 59161021 Sábado 5
Restricción
No debe usar ningún tipo de función / clase / ... que esté relacionada con la marca de tiempo o la fecha, como la Dateclase en Java/ JavaScript/ ActionScript, o la getdatefunción en PHP.
Debería usar el calendario gregoriano , que es utilizado por muchas personas ahora.
Por supuesto, el código más corto gana. Si dos códigos tienen la misma longitud, gana el código con los votos más altos.
(Debido: cuando hay más de 5 códigos que tienen más de (o igual) +1votos).
echo 4.