Bom,o enunciado diz que preciso imprimir erro se algumas informação for inválida. meu codigo imprime a data corretaquando todos os dados são validos,mais quando algum dado é invalido,continua imprimindo a data e deveriaapenas imprimir a palavra ERRO.
public class Exercicio14{
public static void main(String[]args)
{
int diasemana, diames, mes, ano;
String data = null, erro="ERRO";
diasemana = Integer.parseInt(JOptionPane.showInputDialog("Entre com o dia da semana(1-7):"));
diames = Integer.parseInt(JOptionPane.showInputDialog("Entre com o dia do mês (1-31):"));
mes = Integer.parseInt(JOptionPane.showInputDialog("Entre com o mês (1-12):"));
ano = Integer.parseInt(JOptionPane.showInputDialog("Entre com o ano(1900-9999):"));
if(diasemana<1 || diasemana>7){
System.out.println(erro);
}
else
{
switch (diasemana)
{
case 1: data = "Segunda-Feira, "; break;
case 2: data = "Terça-feira, "; break;
case 3: data = "Quarta-feira, "; break;
case 4: data = "Quinta-Feira, "; break;
case 5: data = "Sexta-feira, "; break;
case 6: data = "Sabado, "; break;
case 7: data = "Domingo, "; break;
}
if( diames<1 || diames>31)
System.out.println(erro);
else{
data=data + diames;
}
if(mes<1 || mes>12)
System.out.println(erro);
else{
switch (mes)
{
case 1: data = data + " de janeiro";break;
case 2: data = data + " de Fevereiro";break;
case 3: data = data + " de Março";break;
case 4: data = data + " de Abril";break;
case 5: data = data + " de Maio";break;
case 6: data = data + " de Junho";break;
case 7: data = data + " de Julho";break;
case 8: data = data + " de Agosto";break;
case 9: data = data + " de Setembro";break;
case 10: data = data + " de Outubro";break;
case 11: data = data + " de Novembro";break;
case 12: data = data + " de Dezembro";break;
}
if( ano<1900 || ano>9999)
System.out.println(erro);
else{
data = data +" de "+ano;
}
System.out.println(data);
}
}
}}
se alguem puder me ajudar agradeço