Buscar

2. Escreva um programa que lê nome e idade de 5 pessoas e ao final informa quem é o mais novo, o mais velho e qual a média de idade. Faça o cálculo...

2. Escreva um programa que lê nome e idade de 5 pessoas e ao final informa quem é o mais novo, o mais velho e qual a média de idade. Faça o cálculo incluindo um método estático que leva em consideração um atributo estático com a lista de todas as pessoas.

Essa pergunta também está no material:

Exerccios_-_POO
5 pág.

Eletrônica Digital Universidade Estácio de SáUniversidade Estácio de Sá

💡 1 Resposta

User badge image

Ed Verified user icon

Segue abaixo um exemplo de código em Java que atende aos requisitos da questão: ```java import java.util.ArrayList; import java.util.Scanner; public class Pessoa { private String nome; private int idade; private static ArrayList pessoas = new ArrayList<>(); public Pessoa(String nome, int idade) { this.nome = nome; this.idade = idade; pessoas.add(this); } public static Pessoa maisNovo() { Pessoa maisNovo = pessoas.get(0); for (Pessoa pessoa : pessoas) { if (pessoa.idade < maisNovo.idade) { maisNovo = pessoa; } } return maisNovo; } public static Pessoa maisVelho() { Pessoa maisVelho = pessoas.get(0); for (Pessoa pessoa : pessoas) { if (pessoa.idade > maisVelho.idade) { maisVelho = pessoa; } } return maisVelho; } public static double mediaIdade() { int somaIdades = 0; for (Pessoa pessoa : pessoas) { somaIdades += pessoa.idade; } return (double) somaIdades / pessoas.size(); } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); for (int i = 1; i <= 5; i++) { System.out.printf("Digite o nome da %dª pessoa: ", i); String nome = scanner.nextLine(); System.out.printf("Digite a idade da %dª pessoa: ", i); int idade = scanner.nextInt(); scanner.nextLine(); new Pessoa(nome, idade); } System.out.printf("A pessoa mais nova é %s, com %d anos.%n", maisNovo().nome, maisNovo().idade); System.out.printf("A pessoa mais velha é %s, com %d anos.%n", maisVelho().nome, maisVelho().idade); System.out.printf("A média de idade das pessoas é %.1f anos.%n", mediaIdade()); } } ``` O programa cria uma classe `Pessoa` que possui os atributos `nome` e `idade`, além de um atributo estático `pessoas` que armazena todas as instâncias da classe. A classe também possui três métodos estáticos: `maisNovo()`, que retorna a pessoa mais nova da lista; `maisVelho()`, que retorna a pessoa mais velha da lista; e `mediaIdade()`, que retorna a média de idade das pessoas da lista. No método `main()`, o programa lê o nome e a idade de 5 pessoas e cria uma instância da classe `Pessoa` para cada uma delas. Em seguida, o programa imprime na tela quem é a pessoa mais nova, quem é a pessoa mais velha e qual é a média de idade das pessoas.

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais