Primero calcula las diferencias en años, meses y días. Si la diferencia en años es igual a 0, imprime los meses y días. Si la diferencia en años es mayor de 0, imprime los meses y años.
P ej: hoy = 06/03/2013 fecha_nacimiento = 25/04/1985
diferencia en días = 06 - 25 = - 19 + 30 = 11 días (aproximadamente)
diferencia en meses = 3 - 4 -1 = -2 + 12 = 10 meses
diferencia en años = 2013 - 1985 - 1 = 27 años
Solución = 27 años y 10 meses
Otra solución consiste en calcular el numero de días entre ambas fechas y dividirlo entre 365 para calcular los años, multiplicas por 12 el resto de la división anterior y tienes los meses y multiplicas por 30 la parte decimal de la anterior expresión y tienes los días.
En el ejemplo anterior
diferencia en días entre ambas fechas = 10176 días
10176 / 365 = 27,879 = 27 años
0.879 * 12 = 10,548 meses
0.548 * 30 = 16,44 días = 17 dias
Solución = 27 años y 10 meses