Jump to content

Recommended Posts

Bom dia !

Tenho 5 exercícios da faculdade

Estou tentando fazer , mas está dando erro em grande parte do código.

Ajuda pf ?

Até agora só a questão c , deu certo!

 

Uma empresa decidiu fazer um levantamento em relação aos candidatos que
se apresentarem para preenchimento de vagas no seu quadro de
funcionários, utilizando processamento eletrônico. Supondo que você seja o
programador encarregado desse levantamento, faça uma rotina que:
- Leia um conjunto de dados contendo:
a) Número de inscrição do candidato;
b) Idade
c) Sexo (0 – feminino e 1 - masculino)
d) Experiência no serviço (1 - sim ou 2 - não)
- Calcule e exiba
a) Número de candidatos do sexo feminino;
b) Número de candidatos do sexo masculino;
c) Idade média dos homens que já tem experiência no serviço;
d) Porcentagem dos homens com mais de 45 anos entre o total de
homens;
e) Número de mulheres que tem 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.
- Escreva:
g) O número de inscrição das mulheres pertencentes ao item e;
h) O que foi calculado em cada item especificado.

----------------------------------------------------------------------------------------------------------------------------------

 

#include<stdio.h>
#include<stdlib.h>
main()
{
int ins[20],id[20],sexo[20],ex[20],i,contf,contm,tid,maior,menor;
float pm , ph;
for(i=1;i<=2;i++){
printf("Digite o numero de Inscricao\n");
scanf("%d",&ins);
printf("Digite a sua idade \n ");
scanf("%d",&id);
printf("Digite: 0 - Feminino 1 - Masculino\n ");
scanf("%d",&sexo);
printf("Digite se possui experiencia: 1 - Sim 2 - Nao \n ");
scanf("%d",&ex);
if (sexo==0)
{
contf=(sexo+sexo)+1;
}
else if (sexo==1)
{
contm=(sexo+sexo)+1;
}
else if(sexo==1&& ex== 1)
{
tid=(id+id)/i;
}
else if(sexo==1 && id>=45)
{
ph=(i*100)/(id*1);
}
else if (sexo==0 && id<=35 && ex==1)
{
pm=(i*100)/(id*1);
}
else if(sexo==0 ){
maior=id;
menor=id;
}
else if(id>maior)
{
maior=id;
}
else if(id<menor)
{
menor=id;
}
}
printf("A quantidade de Mulher e de %d\n ",contf);
printf("A quantidade de Homens e de %d\n ",contf);
printf("Idade media dos Homens que ja tem experiência no servico:%d\n ",tid);
printf("Porcentagem dos homens com mais de 45 anos entre o total de homens %f\n",ph);
printf("Numero de mulheres que tem idade inferior a 35 anos e com experiencia %f\n ",pm);
printf("A menor idade entre as mulheres que ja tem experiencia no servico%d \n ",menor);
}

Share this post


Link to post
Share on other sites

#include<stdio.h>

 

#define MAX_CANDIDATOS 20

 

struct candidato{

  int inscricao;

  int idade;

  int sexo;

  int experiencia;

};

 

struct candidato candidatos[MAX_CANDIDATOS];

 

int num_candidatos=0;

 

void adiciona();

 

int calcula_homens();

 

int calcula_mulheres();

 

int calcula_idade_media_homens_com_exp();

 

int calcula_porcentagem_homens_mais_45();

 

int calcula_mulheres_menos_35_com_exp();

 

int calcula_menor_idade_mulheres_com_exp();

 

void exibe_num_inscricao_mulheres_item_e();

 

int main () {

  

  char resp;

  while(1){

    printf("Deseja adicionar um novo candidato ? S/N");

    fflush(stdin);

    scanf("%c", &resp);

    if ((resp == 'n') || (resp == 'N'))

      break;

    adiciona();

  }

  printf("O numero de candidatos homens e: %d", calcula_homens());

  printf("O numero de candidatas mulheres e: %d", calcula_mulheres());

  printf("A idade media dos homens com experiencia e: %d", calcula_idade_media_homens_com_exp());

  printf("A porcentagem de homens com mais de 45 anos e: %d", calcula_porcentagem_homens_mais_45());

  printf("O numero de mulheres com menos de 35 anos e com experiencia e: %d", calcula_mulheres_menos_35_com_exp());

  printf("A menor idade entre as mulheres com experiencia e: %d", calcula_menor_idade_mulheres_com_exp());

  printf("O numero de inscricao das mulheres pertencentes ao item e e:");

  exibe_num_inscricao_mulheres_item_e();

system("PAUSE");

}

 

void adiciona(){

  if (num_candidatos == MAX_CANDIDATOS){

    printf("Lista de candidatos cheia.");   

    return;   

  }

  printf("Digite o numero da inscricao:");

  scanf("%d",&candidatos[num_candidatos].inscricao);  

  printf("Digite a idade:");

  scanf("%d",&candidatos[num_candidatos].idade);  

  printf("Digite o sexo 0-masculino 1-feminino:");

  scanf("%d",&candidatos[num_candidatos].sexo);  

  printf("Ja possui experiencia? 1-sim 2-nao:");

  scanf("%d",&candidatos[num_candidatos].experiencia);  

  num_candidatos++;

}

 

int calcula_homens(){  

  int conta_homens=0;

  int i;

  for(i=0; i<num_candidatos; i++)

    if(candidatos.sexo == 0)

      conta_homens++;

  return conta_homens;

}

 

int calcula_mulheres(){  

  int conta_mulheres=0;

  int i;

  for(i=0; i<num_candidatos; i++)

    if(candidatos.sexo == 1)

      conta_mulheres++;

  return conta_mulheres;

}

 

int calcula_idade_media_homens_com_exp(){

  int homens_com_exp = 0;

  int soma_das_idades = 0;

  int i;

  for(i=0; i<num_candidatos; i++)

    if ((candidatos.sexo==0) && (candidatos.experiencia==1)){

      homens_com_exp++;

      soma_das_idades += candidatos.idade;  

    }  

  if (!homens_com_exp)

    return 0;

  return soma_das_idades/homens_com_exp;    

}

 

int calcula_porcentagem_homens_mais_45(){

  int i;

  int homens_mais_45=0;

  int homens_45_menos=0; //Homens com 45 ou menos

  if (calcula_homens()==0)

    return 0;

  for(i=0; i<num_candidatos; i++)

    if (candidatos.sexo==0)

      if (candidatos.idade>45)

        homens_mais_45++;

      else 

        homens_45_menos++;

  return (100*homens_mais_45)/calcula_homens();

}

 

int calcula_mulheres_menos_35_com_exp(){

  int i;

  int retorno=0;

  for(i=0; i<num_candidatos; i++)

    if (candidatos.sexo==1)

      if(candidatos.idade<35)

        if(candidatos.experiencia==1)

          retorno++;

  return retorno; 

}

 

int calcula_menor_idade_mulheres_com_exp(){

  int i;

  int menor_idade=0;  

  for(i=0; i<num_candidatos; i++)

    if (candidatos.sexo==1)

      if (candidatos.experiencia==1)  

        if (menor_idade==0) menor_idade = candidatos.idade;        

        else if (candidatos.idade<menor_idade)

          menor_idade=candidatos.idade;

  return menor_idade;

}

 

void exibe_num_inscricao_mulheres_item_e(){

  int i;

  for(i=0; i<num_candidatos; i++)

    if (candidatos.sexo==1)

      if(candidatos.idade<35)

        if(candidatos.experiencia==1)

          printf("%d\n", candidatos.inscricao);

}

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.