Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição

Uma empresa decidiu fazer um levantamento em relação aos candidatos que se apresentarem para preenchimento de vagas no seu quadro de funcionários - Exercícios Resolvidos de Java

Quantidade de visualizações: 557 vezes
Pergunta/Tarefa:

Uma empresa decidiu fazer um levantamento em relação aos candidatos que se apresentarem para preenchimento de vagas no seu quadro de funcionários. Supondo que você seja o programador dessa empresa, faça um programa Java que:

a) Leia, para cada candidato, a idade, o sexo (M ou F) e a experiência no serviço (S ou N). Para encerrar a entrada de dados digite zero para a idade.

Calcule e mostre:

a) o número de candidatos do sexo feminino;
b) o número de candidatos do sexo masculino;
c) a idade média dos homens que já tem experiência no serviço;
d) a percentagem dos homens com mais de 45 anos entre o total dos homens;
e) o número de mulheres com idade inferior a 35 anos e com experiência no serviço;
f) a menor idade entre as mulheres que já tem experiência no serviço.

Seu programa Java deverá exibir uma saída parecida com:

Informe a idade: 46
Informe o sexo [M, F]: M
Possui experiência [S, N]: S

Informe a idade: 19
Informe o sexo [M, F]: F
Possui experiência [S, N]: N

Informe a idade: 43
Informe o sexo [M, F]: M
Possui experiência [S, N]: N

Informe a idade: 58
Informe o sexo [M, F]: M
Possui experiência [S, N]: S

Informe a idade: 58
Informe o sexo [M, F]: F
Possui experiência [S, N]: S

Informe a idade: 37
Informe o sexo [M, F]: F
Possui experiência [S, N]: N

Informe a idade: 0

Quantidade de homens: 3
Quantidade de mulheres: 3
Idade média homens com experiência: 52.0
Porcentagem de homens com mais de 45 anos: 66.66%
Mulheres idade inferior 35 anos com experiência: 0
Menor idade mulheres com experiência: 58
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // variaveis usdas na resolução do problema
    int idade, quant_h, quant_m;
    int quant_h_exp, quant_m_exp, soma_idades_h_exp;
    double idade_media_h_exp;
    int quant_h_mais_45_anos;
    double porc_h_mais_45_anos;
    int quant_m_menor_35_exp, menor_idade_m_exp;
    char sexo, experiencia;
    
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos inicializar algumas variáveis
    quant_h = 0; // quantidade de homens
    quant_m = 0; // quantidade de mulheres
    quant_h_exp = 0; // quantidade de homens com experiência
    quant_m_exp = 0; // quantidade de mulheres com experiência
    quant_h_mais_45_anos = 0; // quantidade homens mais 45 anos
    soma_idades_h_exp = 0; // soma as idades dos homens com experiência
    menor_idade_m_exp = 0; // menor idade mulher com experiência
    quant_m_menor_35_exp = 0; // quantidade de mulheres menor que 35 anos
    // com experiência no serviço
    
    // agora o laço que lê a idade, o sexo e a experiência
    do{
      System.out.print("\nInforme a idade: ");
      idade = Integer.parseInt(entrada.nextLine());
      
      // a idade informada é diferente de 0
      if(idade != 0){
        // vamos ler o sexo
        System.out.print("Informe o sexo [M, F]: ");
        sexo = entrada.nextLine().toUpperCase().charAt(0);
        System.out.print("Possui experiência [S, N]: ");
        experiencia = entrada.nextLine().toUpperCase().charAt(0);
        
        // esse candidato é do sexo feminino?
        if(sexo == 'F'){
          // aumentamos a quantidade de candidatos do sexo feminino
          quant_m = quant_m + 1;
          
          // esta mulher possui experiência?
          if(experiencia == 'S'){
            // DICA DE PROGRAMADOR SÊNIOR: Se esta for a primeira mulher
            // com experiência, então ela possui a menor idade entre as
            // mulheres com experiência
            if(quant_m_exp == 0){
              menor_idade_m_exp = idade; // menor idade mulher com experiência
            }
            else{
              // essa idade é menor que a idade que já temos?
              if(idade < menor_idade_m_exp){
                menor_idade_m_exp = idade;
              }
            }
            
            // essa mulher tem idade menor que 35 e experiência?
            if(idade < 35){
              quant_m_menor_35_exp = quant_m_menor_35_exp + 1;
            }
            
            // aumentamos a quantidade de mulheres com experiência
            quant_m_exp = quant_m_exp + 1;
          }  
        }
        // é do sexo masculino então
        else{
          // aumentamos a quantidade de candidatos do sexo masculino
          quant_h = quant_h + 1;
          // esse homem possui experiência?
          if(experiencia == 'S'){
            // aumentamos a quantidade de homens com experiência
            quant_h_exp = quant_h_exp + 1;
            // precisamos somar esta idade então
            soma_idades_h_exp = soma_idades_h_exp + idade;
          }
          
          // esse homem tem mais de 45 anos?
          if(idade > 45){
            quant_h_mais_45_anos = quant_h_mais_45_anos + 1;
          }
        }
      }
    }while(idade != 0);
     
    // vamos mostrar os dados
    System.out.println("\nQuantidade de homens: " + quant_h);
    System.out.println("Quantidade de mulheres: " + quant_m);
    
    // vamos calcular a idade média dos homens com experiência
    // no serviço
    idade_media_h_exp = 0;
    if((quant_h > 0) && (quant_h_exp > 0)){
      idade_media_h_exp = soma_idades_h_exp / ((double)quant_h_exp);
      System.out.println("Idade média homens com experiência: " + 
        idade_media_h_exp);
    }
    else{
      System.out.println("Não houve homens com experiência");
    }
    
    // vamos mostrar a porcentagem de homens com mais de 45 anos
    if((quant_h > 0) && (quant_h_mais_45_anos > 0)){
      porc_h_mais_45_anos = (quant_h_mais_45_anos / (double)quant_h) * 100;
      System.out.println("Porcentagem de homens com mais de 45 anos: " + 
        porc_h_mais_45_anos + "%");
    }
    else{
      System.out.println("Não houve homens com idade maior de 45 anos");
    }
    
    // vamos mostrar a quantidade de mulheres com idade inferior
    // a 35 anos e com experiência
    System.out.println("Mulheres idade inferior 35 anos com experiência: " +
      quant_m_menor_35_exp);
    
    // vamos mostrar a menor idade de mulheres com experiência
    if((quant_m > 0) && (quant_m_exp > 0)){
      System.out.println("Menor idade mulheres com experiência: " + 
        menor_idade_m_exp);
    }
    else{
      System.out.println("Não houve mulheres com experiência");
    }
  }
}


Link para compartilhar na Internet ou com seus amigos:

Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 46 usuários muito felizes estudando em nosso site.