Exercício 3.16.3
Página 1 de 1
Exercício 3.16.3
Solução simples
Solução mais completa:
- Código:
import java.util.Scanner;
public class AniversariosPorMes {
//DESAFIO: Faça um programa que pergunte quantas
//pessoas existem em uma turma. Depois, o
//programa deve perguntar o mês de aniversário
//de cada pessoa. Ao final, o programa deve
//dizer quantas pessoas fazem aniversário em cada mês
public static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
int [] aniversariosPorMes = new int [13];
//a posicao 0 não será usada neste programa
//vamos precisar das posições 1 a 12
for (int i=1; i<=12; i++) {
aniversariosPorMes[i] = 0;
}
//este for não é necessário, pois um array
//sempre inicializa todos os valores com 0
//ao contrario de uma variavel que fica com
//valor indefinido
System.out.println("Digite a quantidade de pessoas");
int qtdPessoas = scanner.nextInt();
for (int i=0; i<qtdPessoas; i++) {
System.out.println("Digite o mês de aniversário (numero)");
int mes = scanner.nextInt();
aniversariosPorMes[mes]++;
//aumenta a quantidade de pessoas que fez
//aniversario naquele mes
}
System.out.println("Aniversários por mês: ");
for (int i=1; i<=12; i++) {
System.out.println("No mês " + i + " há " + aniversariosPorMes[i] +
" pessoa(s) fazendo aniversario");
}
}
}
Solução mais completa:
- Código:
import java.util.Scanner;
public class AniversariosPorMes2 {
//DESAFIO: Faça um programa que pergunte quantas
//pessoas existem em uma turma. Depois, o
//programa deve perguntar o mês de aniversário
//de cada pessoa. Ao final, o programa deve
//dizer quantas pessoas fazem aniversário em cada mês
public static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
int [] aniversariosPorMes = new int [12];
String [] nomeMes = new String[12];
nomeMes[0] = "janeiro";
nomeMes[1] = "fevereiro";
nomeMes[2] = "março";
nomeMes[3] = "abril";
nomeMes[4] = "maio";
nomeMes[5] = "junho";
nomeMes[6] = "julho";
nomeMes[7] = "agosto";
nomeMes[8] = "setembro";
nomeMes[9] = "outubro";
nomeMes[10] = "novembro";
nomeMes[11] = "dezembro";
System.out.println("Digite a quantidade de pessoas");
int qtdPessoas = scanner.nextInt();
for (int i=0; i<qtdPessoas; i++) {
System.out.println("Digite o mês de aniversário (numero)");
int mes = scanner.nextInt();
aniversariosPorMes[mes-1]++; //-1 ajusta pra posicao correta
//aumenta a quantidade de pessoas que fez
//aniversario naquele mes
}
System.out.println("Aniversários por mês: ");
for (int i=0; i<=11; i++) {
System.out.println("Em " + nomeMes[i] + " há " + aniversariosPorMes[i] +
" pessoa(s) fazendo aniversario");
}
}
}
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|