Estou aprendendo a programar em java na minha faculdade (Engenharia de Software) e estou usando Netbeans para testar os programas que faço.
No que estou fazendo atualmente, a mensagem do else, que deveria aparecer uma vez, acaba aparecendo mais de uma vez.
Segue o código:
import java.util.Scanner;
public class ex2{
public static void main(String[]args){
Scanner input = new Scanner(System.in);
int dia;
int mes;
System.out.println("Insira o dia");
dia = input.nextInt();
System.out.println("Insira o mês");
mes = input.nextInt();
if (mes == 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8
|| mes == 10 || mes == 12)
if(dia > 0 && dia <=31)
System.out.println("Datá válida. Data: "+ dia +"/ "+mes+"/ "+2016);
else
System.out.println("Dia inválido");
if(mes == 4 || mes==6 || mes==9 || mes==11)
if(dia>0 && dia <=30)
System.out.println("Datá válida. Data: "+ dia +"/ "+mes+"/ "+2016);
else
System.out.println("Dia inválido");
if(mes == 2 && dia > 0 && dia <=29)
System.out.println("Datá válida. Data: "+ dia +"/ "+mes+"/ "+2016);
else
System.out.println("Dia inválido");
if (mes <1 || mes >12)
System.out.println("Mês inválido");
if (dia <1 || dia >31)
System.out.println("Dia inválido");
}
}
Quando fui testar para ver se estava compilando, eu coloquei um dia inválido para ver se estava aparecendo a mensagem do else certa. A mensagem apareceu, mas três vezes:
Insira o dia
32
Insira o mês
5
Dia inválido
Dia inválido
Dia inválido