Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/10/2008, 07:20
IgnacioJavier
 
Fecha de Ingreso: octubre-2008
Mensajes: 34
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: Darme una idea de sacar la diferencia en años entre fechas

Te doy las siguientes pautas:
Llamaremos
d1, m1, a1 a los dias, meses y años iniciales.
d2, m2, a2 a los dias, meses y años finales.
dias, meses, agnos a las diferencias:
dias = d2-d1; meses = m2 - m1; agnos = m2-m1.

Finalmente verificamos si alguna diferencia nos dió negativa y procedemos a restar una unidad al valor siguiente, comenzando por los dias.

Ej.
if (dias<0) {
dias += 30; // para corregir el valor negativo
meses -- // se resta un mes por no haberse cumplido.
}

if (meses<0)
meses +=12 //la explicacion es igual al caso anterior
agnos --
}
La respuesta sera dias, meses, agnos

Te queda un detalle para analizar en caso de que al año inicial haya sido bisiesto y los días sean 29 y 28 de febrero respectivamente y consideraciones generales sobre el ultimo dia de los meses ó entre éstos y el primero del siguiente. Ej 1 de marzo, 28 de febrero.

Última edición por IgnacioJavier; 28/10/2008 a las 07:47 Razón: complemento