Exercício 10) Elaborar um algoritmo (Java) para imprimir o número de dias de um dado mês e ano. Anos bissextos deverão ser tratados convenientemente, ou seja, em anos bissextos o mês de fevereiro possui 29 dias.
Dica: anos bissextos são múltiplos de 4 e não são múltiplos de 100, exceto os anos múltiplos de 400, que também são bissextos.
NÃO TENHO A MÍNIMA IDÉIA de como fazer isso, alguém pode me ajudar?
Por favor, ao postar tópicos, não deixe os títulos APENAS COM LETRAS MAIÚSCULAS. Nem fique mendigando ajuda.
Além de prejudicar a leitura, é pouco ético.
Quanto ao seu problema, use o operador de resto. Exemplo:
if(ano%400==0)//Testaseoanoédivisívelpor400.
M
Mitidiero
Posta sua dúvida, vc não sabe como fazer o que disso? =)
matheusunitt
Tenta este exemplo que fiz abaixo:
if (ano < 0) {
System.out.println("Não é um ano!");
} else if ((ano % 4 == 0 && ano % 100 != 0) || (ano % 400 == 0)) {
System.out.println("É bissexto!");
} else {
System.out.println("Não é bissexto!");
}
cpsilva
Olá matheusunitt, sei que pode ser como “chutar cachorro morto”, mas é que eu estava fazendo o código sem ver sua resposta, ou antes, sei lá… mas lá vai heheheh
packagebr.bom.bissexto;publicclassAno{privateintdias;privateintano;privatebooleanbi;//construtorpublicAno(intano){this.setAno(ano);}privatevoidsetBissexto(){if(this.getAno()%4==0&&(this.getAno()%400==0||this.getAno()%100!=0)){this.setDias(366);this.setBi(true);}else{this.setBi(false);this.setDias(365);}}// deixei private para impedir que sobra aça externaprivatevoidsetDias(intdias){this.dias=dias;}publicintgetDias(){returndias;}publicvoidsetAno(intano){this.ano=ano;// toda que vez q o ano for alterado// ja calcula o dados...this.setBissexto();}publicintgetAno(){returnano;}// deixei private para impedir que sobra aça externaprivatevoidsetBi(booleanbi){this.bi=bi;}publicbooleanisBi(){returnbi;}}
Classe principal:
packagebr.bom.bissexto;publicclassPrincipal{publicstaticvoidmain(Stringargs[]){Anoano=newAno(2024);System.out.println("Ano "+ano.getAno()+" tem "+ano.getDias()+" dias.");}}
S
Soruji
mp123:
Elaborar um algoritmo (Java) para imprimir o número de dias de um dado mês e ano. Anos bissextos deverão ser tratados convenientemente, ou seja, em anos bissextos o mês de fevereiro possui 29 dias.
Dica: anos bissextos são múltiplos de 4 e não são múltiplos de 100, exceto os anos múltiplos de 400, que também são bissextos.
NÃO TENHO A MÍNIMA IDÉIA de como fazer isso, alguém pode me ajudar?
Grato pra quem puder me ajudar!!!
Como você não postou nenhum código, estou colocando um. Fiz no notepad, então, qualquer “bug”, fica como lição de casa pra você, blza?
importjavax.swing.JOptionPane;classDia{intqtde;publicrecuperaMes(intmes){switch(mes){case1:qtde=31;break;case2:qtde=28;break;case3:qtde=31;break;case4:qtde=30;break;case5:qtde=31;break;case6:qtde=30;break;case7:qtde=31;break;case8:qtde=31;break;case9:qtde=30;break;case10:qtde=31;break;case11:qtde=30;break;case12:qtde=31;break;}publicrecuperaAno(intano){if(ano%400==0&&qtde==28){qtde+=1;JOptionPane.showMessageDialog(null,"o mes digitado do ano"+ano+"possui"+qtde+"dias");}}}publicstaticvoidmain(String[]args){Diaapp=newDia();app.recuperaMes(Integer.parseInt(JOptionPane.showInputDialog("Informe o mês desejado (numeros de 1 a 12)");app.recuperaAno(Integer.parseInt(JOptionPane.showInputDialog("Informe o ano desejado");}}
M
mp123
Valeu a todos que responderam, graças a ajuda ai consegui resolver aqui… =)
mt obrigado!!