import java.io.*;
import javax.swing.JOptionPane;
import java.util.Date;
class Metodo
{
int edad1;
int edanmes;
int meses;
//Iniciamos el uso de la Clase Dt
//Metodo que obtiene la edad exacta en años
void asignarano(int dia1[],int mes1[],int fecha1[], int res[], int tama)
{
int c;
for(c=0;c<=(tama-1);c++)
{
edad1=((tod.getYear()+1900)-(fecha1[c]))-1;
if((tod.getMonth()+1)-mes1[c]<0)
{
edad1=edad1+0;
res[c]=edad1;
}
else if((tod.getMonth()+1)-mes1[c]>0)
{
edad1=edad1+1;
res[c]=edad1;
}
else if((tod.getMonth()+1)-mes1[c]==0)
{
if(tod.getDay()>=dia1[c])
edad1=edad1+1;
res[c]=edad1;
}
}
}
//Metodo que calcula la edad en meses
void edames(int anos[],int mes[], int res2[], int tama)
{
int c1;
for(c1=0;c1<=(tama-1);c1++)
{
meses=(tod.getMonth()+1)-mes[c1];
if(meses>=0)
{
edanmes=(anos[c1]*12)+meses;
}
else if (meses<0)
{
edanmes=(anos[c1]*12)-(meses);
}
res2[c1]=edanmes;
}
}
//Metodo que calcula la edad en dias
void edandi(int diias[], int respa[], int diasviv[], int tama)
{
int dia,dib,dic=0;
int fi;
for(fi=0;fi<=(tama-1);fi++)
{
dia=respa[fi]*30;
if(diias[fi]>=tod.getDay())
{
dib=diias[fi]-tod.getDay();
dic=dia-dib;
}
else if(diias[fi]<tod.getDay())
{
dib=diias[fi]-tod.getDay();
dic=dia+((dib)*-1);
}
diasviv[fi]=dic;
}
}
}//Final de la clase
class Os
{
public static void main
(String args
[]) {
//creacion de los vectores
int a=1,tam=0;
do{
try{
tam
=Integer.
parseInt(JOptionPane.
showInputDialog(null,
"Indique el Número de personas,nque desean saber su edad en dias meses y años :ntttNO acepta el cero (0)")); }
{
JOptionPane.
showMessageDialog(null,
"Coloque valores numéricos y Positivos Superiores a cero",
"Error de Lectura",
JOptionPane.
ERROR_MESSAGE); a=0;
}
}while(a==0);
int año[]=new int[tam];
int mes[]=new int[tam];
int dia[]=new int[tam];
int vec[]=new int[tam];
int vec2[]=new int[tam];
int vec3[]=new int[tam];
int x,xtra,Res,cuento;
xtra=0;
cuento=0;
//Lecturas y Carga de los 3 vectores con los datos del usuario, aplicando TC
for(x=0; x<=(tam-1); x++)
{
try
{
xtra=xtra+1;
dia
[x
]=Integer.
parseInt(JOptionPane.
showInputDialog(null,
"Introduzca dia de nacimiento del #"+xtra
+" :")); mes
[x
]=Integer.
parseInt(JOptionPane.
showInputDialog(null,
"Introduzca el mes de nacimiento del #"+xtra
+" :")); año
[x
]=Integer.
parseInt(JOptionPane.
showInputDialog(null,
"Introduzca Año de Nacimiento del #"+xtra
+" :"));
{
JOptionPane.
showMessageDialog(null,
"Coloque valores numéricos",
"Error de Lectura",
JOptionPane.
ERROR_MESSAGE); xtra=1;
a=0;
}
}
Metodo obj= new Metodo();
//Llamando al que calcula los años exactos
obj.asignarano(dia,mes,año,vec,tam);
//Imprime los años de las 10 personas
for(Res=0;Res<=(tam-1);Res++)
{
cuento=cuento+1;
JOptionPane.
showMessageDialog(null,
"La cantidad de años que tiene el # "+cuento
+" es: "+vec
[Res
]); }
//Llamando al que hace el calculo de la edad en meses
obj.edames(vec,mes,vec2,tam);
cuento=0;
Res=0;
//Imprime la edad en meses de las 10 personas
for(Res=0;Res<=(tam-1);Res++)
{
cuento=cuento+1;
JOptionPane.
showMessageDialog(null,
"La cantidad de meses que ha vivido el # "+cuento
+" es: "+vec2
[Res
]); }
Res=0;
cuento=0;
//LLamando al que calcula la edad en días
obj.edandi(dia,vec2,vec3,tam);
for(Res=0;Res<=(tam-1);Res++)
{
cuento=cuento+1;
JOptionPane.
showMessageDialog(null,
"La cantidad de días que ha vivido el # "+cuento
+" es de aprox.: "+vec3
[Res
]+" días."+"tnnNO se tomaron en cuenta los dias de más en los años biciestos"); }
}
}