public class Censo {
ArrayList <Habitante> habitantes = new ArrayList<Habitante>();
public void incluirHabitante(Habitante h){
habitantes.add(h);
}
public int getMaiorIdade(){
int maiorIdade=0;
for(Habitante h : habitantes){
if(maiorIdade<h.getIdade()){
maiorIdade=h.getIdade();
}
}
return maiorIdade;
}
public int getMenorIdade(){
int menorIdade=0;
boolean n1 = true;
for(Habitante h : habitantes){
if (n1) {
menorIdade=h.getIdade();
n1 = false;
}
if(menorIdade>h.getIdade()){
menorIdade=h.getIdade();
}
}
return menorIdade;
}
public double getIdadeMedia(){
double mediaIdade=0;
for(Habitante h: habitantes){
mediaIdade+=h.getIdade();
}
mediaIdade/=habitantes.size();
return mediaIdade;
}
public double getMaiorSalario(){
double maiorSalario=0;
for(Habitante h: habitantes){
if(maiorSalario<h.getSalario()){
maiorSalario=h.getSalario();
}
}
return maiorSalario;
}
public double getMenorSalario(){
boolean n1 = true;
double menorSalario=0;
for(Habitante h: habitantes){
if(n1){
menorSalario=h.getSalario();
n1=false;
}
if(menorSalario>h.getSalario()){
menorSalario=h.getSalario();
}
}
return menorSalario;
}
public double getMediaSalarial(){
double mediaSalarial=0;
for(Habitante h: habitantes){
mediaSalarial+=h.getSalario();
}
mediaSalarial/=habitantes.size();
return mediaSalarial;
}
public int numHabitantesEscolaridade(Escolaridade escolaridade){
int cont1=0, cont2=0, cont3=0, cont4=0;
for(Habitante hab : habitantes){
if(hab.getEscolaridade()==Escolaridade.ANALFABETO){
cont1++;
}else if(hab.getEscolaridade()==Escolaridade.FUNDAMENTAL){
cont2++;
}else if(hab.getEscolaridade()==Escolaridade.ENSINO_MEDIO){
cont3++;
}else if(hab.getEscolaridade()==Escolaridade.SUPERIOR){
cont4++;
}
}
return 0;
}
}
public class Habitante {
private String nome;
private int idade;
private double salario;
Escolaridade escolaridade;
ArrayList<Habitante> habitantes = new ArrayList<Habitante>();
public Escolaridade getEscolaridade() {
return escolaridade;
}
public void setEscolaridade(Escolaridade escolaridade) {
this.escolaridade = escolaridade;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public double getSalario() {
return salario;
}
public void setSalario(double salario) {
this.salario = salario;
}
}
public class Main {
public static void main(String[] args) {
Censo censo=new Censo();
int op=-1;
while(op!=0){
System.out.println("Digite 99 para incluir os habitantes: ");
System.out.println("Digite 1 para mostrar na tela a idade mais alta: ");
System.out.println("Digite 2 para mostrar na tela a idade mais baixa: ");
System.out.println("Digite 3 para mostrar na tela a media de idade: ");
System.out.println("Digite 4 para mostrar na tela o maior salario: ");
System.out.println("Digite 5 para mostrar na tela o menor salario: ");
System.out.println("Digite 6 para mostrar na tela a media salarial: ");
System.out.println("Digite 7 para mostrar na tela o numero de habitantes por escolaridade: ");
System.out.println("Digite 0 para sair do programa!");
op=Console.lerInteiro();
switch (op){
case 99:
int qtde=Console.lerInteiro("Digite a quantidade de habitantes");
for(int i=0;i<qtde;i++){
Habitante h = new Habitante();
String nome=Console.lerTexto("Digite o nome: ");
h.setNome(nome);
int idade=Console.lerInteiro("Digite a idade: ");
h.setIdade(idade);
double salario=Console.lerDouble("Digite o salario: ");
h.setSalario(salario);
int opcao=Console.lerInteiro("ESCOLARIDADE: \n 0 - Analfabeto \n 1 - FUndamental \n 2 - Medio \n 3 - Superior");
switch(opcao){
case 0:
h.setEscolaridade(Escolaridade.ANALFABETO);
break;
case 1:
h.setEscolaridade(Escolaridade.FUNDAMENTAL);
break;
case 2:
h.setEscolaridade(Escolaridade.ENSINO_MEDIO);
break;
case 3:
h.setEscolaridade(Escolaridade.SUPERIOR);
break;
default: throw new RuntimeException();
}
censo.incluirHabitante(h);
}
break;
case 1:
System.out.println("A maior idade é: "+censo.getMaiorIdade());
break;
case 2:
System.out.println("A menor idade é: "+censo.getMenorIdade());
break;
case 3:
System.out.println("A media de idade é: "+censo.getIdadeMedia());
break;
case 4:
System.out.println("O maior salario é: "+censo.getMaiorSalario());
break;
case 5:
System.out.println("O menor salario é: "+censo.getMenorSalario());
break;
case 6:
System.out.println("A media salarial é de : "+censo.getMediaSalarial());
break;
case 7:
System.out.println("Para a escolaridade 0, temos "+censo.numHabitantesEscolaridade(Escolaridade.ANALFABETO)+" habitantes");
System.out.println("Para a escolaridade 1, temos "+censo.numHabitantesEscolaridade(Escolaridade.FUNDAMENTAL)+" habitantes");
System.out.println("Para a escolaridade 2, temos "+censo.numHabitantesEscolaridade(Escolaridade.ENSINO_MEDIO)+" habitantes");
System.out.println("Para a escolaridade 3, temos "+censo.numHabitantesEscolaridade(Escolaridade.SUPERIOR)+" habitantes");
break;
case 0:
System.out.println("Obrigado, ate a proxima!");
break;
default: throw new RuntimeException();
}
}
}
}
agradeço desde ja!!!