Fórum Problema com exercício utilizando a classe calendar #557300

18/06/2016

0

Esse é o código:
package teste;
import java.util.Calendar;
import java.util.Scanner;
public class Teste {


public static void main(String[] args) {
int idade,ano,mes,dia;
Scanner entrada = new Scanner (System.in);

System.out.println("Qual ano você nasceu? ");
ano = entrada.nextInt();
System.out.println("Qual mês você nasceu? ");
mes = entrada.nextInt();
System.out.println(" Que dia você nasceu? ");
dia = entrada.nextInt();

Calendar calendario = Calendar.getInstance();



if (( mes>calendario.get(Calendar.MONTH)) && (dia>calendario.get(Calendar.DATE))) {

idade = calendario.get(Calendar.YEAR - ano);
}else{
ano += + 1;
idade = (calendario.get(Calendar.YEAR - ano));
}

System.out.println("A sua idade é: " + idade);

}

}


depois do usuário por as 3 informações da erro
Brayan Bertan

Brayan Bertan

Responder

Post mais votado

19/06/2016

Boa tarde, Brayan.

Veja abaixo, os ajustes que fiz com o seu código fonte:

   int ano,mes,dia;
   Scanner entrada = new Scanner (System.in);

   System.out.println("Descubra a sua idade !! ");
   System.out.println("--------------------------"); 
   
   System.out.println("Qual ano você nasceu? ");
   ano = entrada.nextInt();
   System.out.println("Qual mês você nasceu? ");
   mes = entrada.nextInt();
   System.out.println(" Que dia você nasceu? ");
   dia = entrada.nextInt();

   Calendar cHoje = Calendar.getInstance();
   Calendar cDiaTela = Calendar.getInstance(); 
   
   // seta na classe Calendar a dia, mês e ano de nascimento
   cDiaTela.set(ano, mes, dia); 
   
   System.out.println("-------------------------");
   System.out.println(" Resultado ");
   int idade = 0;
   
   while(cDiaTela.before(cHoje))
   {
       // método para aumentar o ano de nascimento
       cDiaTela.add(Calendar.YEAR,+1);
       idade++; 
   } 
   System.out.println("A sua idade é: " + idade);

Miguel Junior

Miguel Junior
Responder

Gostei + 1

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar