Me foi pedido um exercício q leia dia/mes/ano e retorne qntos anos/meses/dias/horas/minutos/segundos foram vividos.
Até então tudo certo, mas eu tenho q dizer em q DIA DA SEMANA caiu a data informada.
Aqui está o codigo.
package aula4;
import java.util.Scanner;
import java.util.Calendar;
public class Data {
public static void main(String[] args) {
Calendar hoje = Calendar.getInstance();
Scanner input = new Scanner (System.in);
int dia;
int mes;
int ano;
int teste=0;
boolean valido = true;
while (teste==0){
System.out.printf("Dados de Nascimento:");
System.out.printf("\nDia:");
dia = input.nextInt();
System.out.printf("Mês:");
mes = input.nextInt();
System.out.printf("Ano:");
ano = input.nextInt();
if ((dia<1) || (dia>31)){
valido=false;
System.out.printf("\nDia Inválido!\n");
teste=0;
}
if ((mes<1) || (mes>12)){
valido=false;
System.out.printf("\nMês Inválido!\n");
teste=0;
}
if ((ano<1950) || (ano>2000)){
valido=false;
System.out.printf("\nAno Inválido!\n");
teste=0;
}
if (valido){
//dias
int anosVividos;
int mesesVividos;
int diasVividos;
//horas
int horasVividos;
int minutosVividos;
int segundosVividos;
//dia da semana
int diaDaSemana;
anosVividos = hoje.get(Calendar.YEAR) - ano;
System.out.printf("\nVocê Viveu %d Anos!", anosVividos);
mesesVividos = anosVividos*12 + hoje.get(Calendar.MONTH) + 1;
System.out.printf("\nVocê Viveu %d Meses!", mesesVividos);
diasVividos = mesesVividos*30 + hoje.get(Calendar.DAY_OF_MONTH);
System.out.printf("\nVocê Viveu %d Dias!", diasVividos);
horasVividos = diasVividos*24 + hoje.get(Calendar.HOUR_OF_DAY);
System.out.printf("\nVocê Viveu %d Horas!", horasVividos);
minutosVividos = horasVividos*60 + hoje.get(Calendar.MINUTE);
System.out.printf("\nVocê Viveu %d Minutos!", minutosVividos);
segundosVividos = minutosVividos*60 + hoje.get(Calendar.SECOND);
System.out.printf("\nVocê Viveu %d Minutos!", minutosVividos);
/*
diaDaSemana = (Calendar.DAY_OF_WEEK);
System.out.printf("\nVocê Nasceu no %dº Dia da Semana!", diaDaSemana);
*/
teste=1;
}
}
}
}
obrigado desde já.