Resolución dia del año
Soy un principiante, necesitaba ayuda acerca de como averiguar el día de la semana a partir de una fecha introducida x el usuario.
Ejemplo: 25/10/1989
"El día 25 es Jueves"
Hola!Te mando éste e-mail porque yo también quiero encontrar la solución a ese problema que planteas.Por favor, si sabes la respuesta ¿te importatía enviármela por correo?.
También estoy intentando averiguar por excel cómo saber si un año es bisiesto ó no.Por favor, si tienes también la solución a éste problema te rogaría que me lo enviaras.Llevo mucho tiemplo empleado en ésta solución y no la encuentro.
Muchas gracias.
También estoy intentando averiguar por excel cómo saber si un año es bisiesto ó no.Por favor, si tienes también la solución a éste problema te rogaría que me lo enviaras.Llevo mucho tiemplo empleado en ésta solución y no la encuentro.
Muchas gracias.
Este es el codigo en c# para calcular si un año es o no bisiesto:
if (año%4!=0)
return false;
else
{
if (año%4==0 && año%100!=0)
return true;
else
{
if (año%4==0 && año%100==0 && año%400==0)
return true;
else
return false;
}
}
Si trabajas en Visual C++ prueba a crearte un objeto CTime, dicho objeto tiene un miembro "int GetDayOfWeek( )" que te devuelve el día de la semana basandose en el local time; ej.: 1 = Sunday, 2 = Monday, ..., 7 = Saturday.
Siento el retraso y espero haberte ayudado
Siento el retraso y espero haberte ayudado
Así es niños, El Wolverine tiene razón y tambien,para qu e sea Bisiesto debe ser divisible entre 4 a güevo y si es divisible entre 100, tonces, debe ser divisible entre 400 tambien , tonces, por lo tanto ...
if (a%4==0 && a%d100!=0 || a%400==0)
es bisiesto si no ps no
if (a%4==0 && a%d100!=0 || a%400==0)
es bisiesto si no ps no
Estas trabajando en C o C++, porque si estas trabajando en C++ seguramente debe existir una clase que seguramente ya realice esta conversión, mira la documentación, posiblemente ya este hecha.
piensalo que seguro que encuentras la solucion, piensa que los dias del año van rotando en la semana es decir que si este año el dia 1 de enero cayo en martes el año que viene caera en miercoles, espero que te sirva la observacion. Saludos
Para resolver el problema de obtener que día de la semana (Domingo, Lunes, Martes, etc) de determinada fecha hay una función muy sencilla:
1. Si se hace un arreglo (0 = Domingo, 1 = Lunes, 2 = Martes.....6 = Sábado).
2. La siguente línea de código te da el indice del arreglo segun la fecha que te dan (incluye años bisiestos).
x=(d+=m<3?a--:a-2,23*m/9+d+4+a/4-a/100+a/400)%7
donde a = año, m = mes, d = día.
Si quieren más detalles, les recomiendo que visiten:
http://users.aol.com/s6sj7gt/mikecal.htm
1. Si se hace un arreglo (0 = Domingo, 1 = Lunes, 2 = Martes.....6 = Sábado).
2. La siguente línea de código te da el indice del arreglo segun la fecha que te dan (incluye años bisiestos).
x=(d+=m<3?a--:a-2,23*m/9+d+4+a/4-a/100+a/400)%7
donde a = año, m = mes, d = día.
Si quieren más detalles, les recomiendo que visiten:
http://users.aol.com/s6sj7gt/mikecal.htm
Bueno, si hay algo que no manejo a la totalidad, es el lenguaje C/C++. Lo que puedes hacer, es tener en cuenta las observaciones anteriores, es verdad que los días rotan, como también es verdad que el año bisiesto existe, además es verdad que hay una rutina para ver los días y que sólo lo imprimes y ya.
Lo que puedes hacer al respecto, es recordar el consejo que te dieron anteriormente, debes preguntar la fecha completa, de tal modo que valides los días del mes, valides si el usuario, por ejemplo, en el espacio del año digitó 2000, dos mil puede ser dividido perfectamente por 4 y no devuelve módulo.
Cuando una división por cuatro, no es exacta, estamos viendo un año bisiesto (366). Al contrario, si no es exacta, estamos viendo un año normal (365).
Lo que puedes hacer al respecto, es recordar el consejo que te dieron anteriormente, debes preguntar la fecha completa, de tal modo que valides los días del mes, valides si el usuario, por ejemplo, en el espacio del año digitó 2000, dos mil puede ser dividido perfectamente por 4 y no devuelve módulo.
Cuando una división por cuatro, no es exacta, estamos viendo un año bisiesto (366). Al contrario, si no es exacta, estamos viendo un año normal (365).
