hola a todos, he realizado un programa que me analice una fecha introducida por teclado separada por ":", la cual me tiene que decir al introducirle una fecha:
- si la fecha es valida.
- me indicara en la estacion del año estamos.
aqui va el codigo:
package ejer_repaso2;
import java.io.*;
public class Main
{
public static void main
(String[] args
) {
int dia,mes,año;
boolean enc;
int i=0;
int d=0;
enc=false;
int m=0;
try
{
System.
out.
println("Introduce la fechaa: "); fecha=br.readLine();
trozos=fecha.split(":");
while(i<trozos.length)
{
if(EsNum(trozos[i]))
{
enc=true;
}
else
{
i++;
}
}
if(año>1999 && año<3000)
{
if(mes>0 && mes<13)
{
if(((mes==1 || mes==3 || mes==5 || mes==7 || mes==8 || mes==10 || mes==12) ||
(mes==4 || mes==6 || mes==9 || mes==11) && d>=1 && d<=30) || (m==2 && d>=1 && d<=28))
{
System.
out.
println("Fecha valida"); }
else
{
System.
out.
println("Fecha no valida"); }
}
else
{
System.
out.
println("Fecha no valida"); }
}
else
{
System.
out.
println("Fecha no valida"); }
/*
*estaciones
* primavera[21/03] asta (21/06)
* verano [21/06] asta (21/09)
* otonio [21/09] asta (21/12)
* invierno [21/12] asta (21/03)
*/
if(((mes==3 && d>=3) || (mes==4 && d>=1 && mes==4 && d>=30) ||
(mes==5 && d>=1 && mes==5 && d>=31) || (mes==6 && d>=1 && mes==6 && d>21)))
{
System.
out.
println("Es Primavera"); }
else
{
if(((mes==6 && d>=21) || (mes==7 && d>=1 && mes==7 &&d>=31) ||
(mes==8 && d>=1 && mes==8 && d>=31) || (mes==9 && d>=1 && m==9 && d>21)))
{
System.
out.
println("Es Verano"); }
else
{
if(((mes==9 && d>=21) || (mes==10 && d>=1 && mes==10 &&d>=31) ||
(mes==11 && d>=1 && mes==11 && d>=31) || (mes==12 && d>=1 && m==12 && d>21)))
{
System.
out.
println("Es Otoño"); }
else
{
System.
out.
println("Es Invierno"); }
}
}
}
{
System.
out.
println("Error en la lectura "+ex
); }
}
public static boolean EsNum
(String fex
) {
int j=0;
boolean e=false;
while(j<fex.length())
{
{
e=true;
}
else
{
e=false;
}
}
return e;
}
}