Pascal/Turbo Pascal - Dia de la semana

 
Vista:

Dia de la semana

Publicado por mal (7 intervenciones) el 30/12/2001 02:40:06
Wenas, me gustaria realizar una funcion que dado una fecha cualquiera(dia/mes/año) me devuelva el dia de la semana que corresponde a esa fecha. salu2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Dia de la semana

Publicado por mal (7 intervenciones) el 30/12/2001 02:57:29
una forma que se me ocurre es la siguiente, aunque no me gusta. Si alguien sabe alguna otra forma de hacerlo le agradeceria que me echara una mano. salu2

function DiaSemana(fecha:TFecha):WORD;
VAR
y,m,d,ds:word;
begin
getdate(y,m,d,ds);
setdate(fecha.anyo,fecha.mes,fecha.dia);
getdate(fecha.anyo,fecha.mes,fecha.dia,ds);
setdate(y,m,d);
DiaSemana:=ds;
end;
{ ds -> 0=Domingo .... 6=Sabado }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Dia de la semana

Publicado por Diego Romero (282 intervenciones) el 30/12/2001 15:15:59
No hay una formula simple para calcular el dia de la semana de una fecha dada debido a lo complejo que es nuestro sistema calendario. Para empezar debes tomar una fecha base de la cual sepas qué dia de la semana fue (o será o es), luego contar cuantos dias hay entre esa fecha y la fecha de la cual quieres saber el dia de la semana teniendo en cuenta los años bisiestos, con ese dato debes calcular el modulo 7 de esa cantidad y dependiendo de qué dia base has tomado considerar ese dia como 0 (cero) y hacer la traslación correcta para que 1 sea Domingo y asi... como puedes ver tu método es mas seguro y mas corto que todo esto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Dia de la semana

Publicado por mal (7 intervenciones) el 30/12/2001 23:26:55
La solucion que expones tambien lo he pensado, pero es lo que dices, es mas laborioso y mas largo el algoritmo. Creo que utilizare el mio, controlando un poco cuando se acerca a medianoche, deberia funcionar "bien", aunque keda limitado por las fechas que el ordenador soporta.
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Dia de la semana

Publicado por Diego Romero (282 intervenciones) el 31/12/2001 22:25:29
No habia notado ese detalle que mencionas, es verdad, las PC no aceptan fechas anteriores al 1 de Enero de 1980... por si te es util el 1 de Enero de 1900 fue Lunes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar