Pascal/Turbo Pascal - comparar fechas en Pascal

 
Vista:

comparar fechas en Pascal

Publicado por leandro (1 intervención) el 01/12/2007 15:43:25
tengo este problema tal vez alguien pueda resolvermelo, necesito comparar en Pascal la fecha actual del ordenador con una anterior y que me diga la cantidad de dias que pasaron, la fecha que yo tengo es un tipo tdatetime.
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:comparar fechas en Pascal

Publicado por Laysquad (47 intervenciones) el 01/12/2007 17:40:55
Hola que tal^^. mira esto es muy facil, pero es algo largo en cierto sentido, ahora me explico:

program fechas ;
uses crt, DOS ;
var
dia,mes,anno, diasemana : word ; {para tomar la fecha del sistema}
dia2,mes2,anno2,diasemana2 :word ; {la fecha a comparar}
dias, temp :integer ; {para los dias transcurridos y para las sumas}

begin
{recuerda que todos en numeros}
writeln('ingrese el dia a analizar') ;
readln(dia2) ; {pedimos el dia}
writeln('ingrese el mes a analizar') ;
readln(mes2) ; {pedimos el mes}
writeln('ingrese el año a analizar') ;
readln(anno2) ; {pedimos el año}
{pedir el dia de la semana es opcional este es solo un ejemplo^^}}

{ahora leemos la fecha del sistema}
getdate(anno,mes,dia,diasemana) ;

{ahora se transforman los dias}
temp := dia- dia2 ; {restamos los dias que hay de diferencia}
if temp < 0 then temp := temp*-1 {si temp es negativo lo hacemos positivo}
dias := temp ; {igualamos dias a temp}
temp := mes- mes2 ; {restamos los meses que hay de diferencia}
if temp < 0 then temp := temp*-1 {si temp es negativo lo hacemos positivo}
dias := dias + (temp*30) ; {igualamos dias a temp*30 ya que cada mes tiene 30 dias}
temp := anno-anno2 ; {restamos los años que hay de diferencia}
if temp < 0 then temp := temp*-1 {si temp es negativo lo hacemos positivo}
dias := dias + (temp*360) ;{igualamos dias a temp*360 ya que cada año tiene 360dias}

writeln('la diferencia de dias entre las dos fechas es: ',dias,' dias') ;
end.

este programa solo te dará un valor aproximado ya que no todos los mese tienen 30 dias y ademas debes calcular los años bisiesto, recuerda que el 1 de enero de 1900 fúe lunes.

espero que te sirva ^^.
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:comparar fechas en Pascal

Publicado por Diego Romero (996 intervenciones) el 01/12/2007 18:24:12
Busca acá:
http://www.driverop.com.ar/pascal.php
el programa difffecha.zip el cual calcula la diferencia real en días teniendo en cuenta la cantidad de días de cada mes, años bisiestos y cambio de calendario.
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