import java.io.*;
import java.util.*;
import java.text.*;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class Fecha
{
public int dia;
public int mes;
public int año;
public Fecha()
{}
public Fecha(int d, int m, int a)
{
this.dia = d;
this.mes = m;
this.año = a;
}
public Fecha(int d, int m )
{
this.dia = d;
this.mes = m;
}
public Fecha(int d)
{
this.dia = d;
}
public Fecha(Fecha f)
{}
void AsignarFecha(int d, int m, int a)
{
AsignarDia (d);
AsignarMes (m);
AsignarAño (a);
}
void AsignarDia(int n)
{
dia = n;
}
void AsignarMes(int n)
{
mes = n;
}
void AsignarAño(int n)
{
año =n;
}
int obtenerDia()
{
return(dia);
}
int obtenerMes()
{
return(mes);
}
int obtenerAño()
{
return(año);
}
int ValidaDia(int nMes, int ndia )
{
int nRes=1;
if ((ndia<=31) && (ndia>=1))
{
switch (nMes){
case 1: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
case 2: if ((ndia<=29) && (ndia>=1))
nRes = 2; break;
case 3: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
case 4: if ((ndia<=30) && (ndia>=1))
nRes = 2; break;
case 5: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
case 6: if ((ndia<=30) && (ndia>=1))
nRes = 2; break;
case 7: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
case 8: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
case 9: if ((ndia<=30) && (ndia>=1))
nRes = 2; break;
case 10: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
case 11: if ((ndia<=30) && (ndia>=1))
nRes = 2; break;
case 12: if ((ndia<=31) && (ndia>=1))
nRes = 2; break;
}
}
return (nRes);
}
int ValidaMes(int m)
{
int nRes = 1;
if ((m<=12) && (m>=1))
nRes = 2;
return (nRes);
}
int ValidaAño(int a)
{
int nRes = 1;
if (a>=1900)
nRes = 2;
return (nRes);
}
int ValidaFecha(int d, int m, int a)
{
int nRes = 1;
int nopp=0;
nopp=ValidaMes(m);
if (nopp==2)
{
nopp=ValidaDia(m,d);
if (nopp==2)
{
nopp=ValidaAño(a);
if (nopp==2)
{
if (m==2)
{
if ((a % 4 == 0) && ((a % 100 != 0) || (a % 400 == 0)))
if ((d<=29) && (d>=1))
nRes=2;
else
System.
out.
println("Error el Año Ingreasado es bisiesto y su diabe debe estar en el rango 1 al 29, para el mes febrero"); }
else
nRes=2;
}
else
System.
out.
println("Error en el Año Ingreasado debe ser mayor o igual 1900"); }
else
System.
out.
println("Error en el Dia Ingreasado"); }
else
System.
out.
println("Error en el Mes Ingreasado");
return (nRes);
}
public void Listar()
{
System.
out.
println(obtenerDia
()+"/"+obtenerMes
() +"/"+obtenerAño
());
}
public void print()
{
System.
out.
println(dia
+"/"+mes
+"/"+año
); }
long totalDias(Fecha f)
{
Date fec1
= gc.
getTime(); Date fec2
= gc1.
getTime();
long time = fec2.getTime() - fec1.getTime();
long tot_dia=time / (3600*24*1000);
return (tot_dia) ;
}
int totalAños(Fecha f){
int tot_año;
tot_año=0;
else
return (tot_año);
}
String result
="NO es Bisiesto ";
if ((obtenerAño() % 4 == 0) && ((obtenerAño() % 100 != 0) || (obtenerAño() % 400 == 0)))
result="es bisiesto";
return (result);
}
public void listaFechaLarga (){
defaultDays = symbols.getShortWeekdays();
try
{
today =dy.parse(fec_str);
output = sd.format(today);
}
{
System.
out.
println("Error al asignar la fecha"); }
}
}