Buscar

alguém pode me ajudar em duas questões de c++ ficaria multo grato

A MARIA DA PENHA CONFECÇÕES decidiu fazer um levantamento em relações aos 3823 candidatos que se apresentaram para o preenchimento de vagas no seu quadro de funcionários. Supondo que você seja o programador responsável pelo programa deste levantamento, construa um algoritmo que: 1°) Leia as 3823 fichas contendo, cada uma, os seguintes dados: A) número de inscrição do candidato B) idade C) sexo D) experiência no serviço (sim ou nao) 2°) Calcule A) numero 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) porcentagem de homens que tem idade inferior a 35 anos e experiência no serviço E) número de mulheres que tem.idade superior a 35 anos e experiência no serviço F) a menor idade entre as mulheres que ja tem experiência no serviço. 3°) Imprima A) o número de inscrição de cada mulher pertencente ao grupo descrito no item E. B) o que foi calculado em cada item acima especificado. A MARIA DA PENHA CONFECÇÕES decidiu fazer um levantamento em relações aos 3823 candidatos que se apresentaram para o preenchimento de vagas no seu quadro de funcionários. Supondo que você seja o programador responsável pelo programa deste levantamento, construa um algoritmo que: 1°) Leia as 3823 fichas contendo, cada uma, os seguintes dados: A) número de inscrição do candidato B) idade C) sexo D) experiência no serviço (sim ou nao) 2°) Calcule A) numero 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) porcentagem de homens que tem idade inferior a 35 anos e experiência no serviço E) número de mulheres que tem.idade superior a 35 anos e experiência no serviço F) a menor idade entre as mulheres que ja tem experiência no serviço. 3°) Imprima A) o número de inscrição de cada mulher pertencente ao grupo descrito no item E. B) o que foi calculado em cada item acima especificado.

💡 3 Respostas

User badge image

Willian Lopes

Qual seria sua dúvida?

0
Dislike0
User badge image

RD Resoluções

Para resolução desse problema, podemos armazenar as leituras em structs, assim, primeiramente criaremos uma struct e depois um vetor com 3823 posições que corresponde a todos candidatos.

#include <iostream>

using namespace std;

typedef struct {

int inscricao;

int idade;

char sexo;

char experiencia;

}candidatos;

candidatos candidato[3823];


Com isso, podemos receber todos os valores dos 3823 candidatos.

int main()

{

for(int i=0;i<3824;i++){

cout<<"Candidato"<<i+1<<endl;

cout<<"Inscrição:"<<endl;

cin >> candidato[i].inscricao;

cout<<"Idade:"<<endl;

cin >> candidato[i].idade;

cout<<"Sexo (M ou F):"<<endl;

cin >> candidato[i].sexo;

cout<<"Experiencia (S ou N):"<<endl;

cin >> candidato[i].experiencia;

}

 

Agora podemos partir para a declaração de variáveis úteis nos cálculos que serão feitos a respeito da segunda questão.

⁄⁄calculo

int quantidade_Sfeminino=0;

int quantidade_sMasculino=0;

int somatorio_idade;

float idademedia_homens_com_experiencia=0;

int quantidade_homens_com_experiencia=0;

float homens_menos35=0;

int mulheres_mais35=0;

int inscricao[3823];


Assim, podemos iniciar a varredura em todas as candidaturas a partir do sexo, assim conseguiremos realizar os demais cálculos.

for(int i=0;i<3824;i++){

if(candidato[i].sexo==´f´||candidato[i].sexo==´f´){

 

Caso o candidato seja mulher, devemos incrementar o contador de mulheres e verificar se a mesma possui experiencia e tem mais que 35 anos, se tudo for verdade, a variável mulher_mais35 também será acrescida e a matricula do candidato é salva em um vetor. Com isso teremos que:

quantidade_Sfeminino++;

if(candidato[i].experiencia==´s´||candidato[i].experiencia==´S´){

if(candidato[i].idade>35){

inscricao[mulheres_mais35]= candidato[i].inscricao;

mulheres_mais35++;

}

}

}

Caso o candidato não seja do sexo feminino, logo ele será do sexo masculino, assim, utilizar o comando else e incrementar na variável que conta a quantidade do sexo masculino.

else{

quantidade_sMasculino;


Agora verificaremos se o mesmo possui experiencia, caso tenha salvaremos o somatório de todas as idades para estabelecer a media posteriormente e a um acréscimo na quantidade de homens com experiencia. Assim:

if(candidato[i].experiencia==´s´||candidato[i].experiencia==´S´){

somatorio_idade=somatorio_idade+candidato[i].idade;

quantidade_homens_com_experiencia++;

 

Caso o candidato ainda possua idade menor que 35 anos, a variável homem_menos35 será acrescida. Assim:

if(candidato[i].idade<35){

homens_menos35++;

}

}

}

}

 


Agora podemos realizar os cálculos de porcentagem e de media. Com isso:

idademedia_homens_com_experiencia=somatorio_idade⁄quantidade_homens_com_experiencia;

homens_menos35=(homens_menos35⁄3823)*100;

float por_mulheres_mais35=(mulheres_mais35⁄3823)*100;


Por fim, devemos mostrar ao usuário todos os dados calculados.

cout<<"Matriculas de mulheres com experiencia e idade<35";

for(int i=0;i<mulheres_mais35;i++){

cout<<inscricao[mulheres_mais35]<<endl;

}

cout<<"Mulheres inscritas"<<quantidade_Sfeminino<<endl;

cout<<"Homens inscritos"<<quantidade_sMasculino<<endl;

cout<<"Idade media de homens com experiencia"<< idademedia_homens_com_experiencia<<endl;

cout<<"% de homens com experiencia e idade<35"<<homens_menos35<<endl;

cout<<"% de mulheres com experiencia e idade>35"<<por_mulheres_mais35<<endl;

return 0;

}

0
Dislike0
User badge image

Andre Smaira

Para resolução desse problema, podemos armazenar as leituras em structs, assim, primeiramente criaremos uma struct e depois um vetor com 3823 posições que corresponde a todos candidatos.

#include <iostream>

using namespace std;

typedef struct {

int inscricao;

int idade;

char sexo;

char experiencia;

}candidatos;

candidatos candidato[3823];

Com isso, podemos receber todos os valores dos 3823 candidatos.

int main()

{

for(int i=0;i<3824;i++){

cout<<"Candidato"<<i+1<<endl;

cout<<"Inscrição:"<<endl;

cin >> candidato[i].inscricao;

cout<<"Idade:"<<endl;

cin >> candidato[i].idade;

cout<<"Sexo (M ou F):"<<endl;

cin >> candidato[i].sexo;

cout<<"Experiencia (S ou N):"<<endl;

cin >> candidato[i].experiencia;

}

Agora podemos partir para a declaração de variáveis úteis nos cálculos que serão feitos a respeito da segunda questão.

//calculo

int quantidade_Sfeminino=0;

int quantidade_sMasculino=0;

int somatorio_idade;

float idademedia_homens_com_experiencia=0;

int quantidade_homens_com_experiencia=0;

float homens_menos35=0;

int mulheres_mais35=0;

int inscricao[3823];

Assim, podemos iniciar a varredura em todas as candidaturas a partir do sexo, assim conseguiremos realizar os demais cálculos.

for(int i=0;i<3824;i++){

if(candidato[i].sexo=='f'||candidato[i].sexo=='f'){

Caso o candidato seja mulher, devemos incrementar o contador de mulheres e verificar se a mesma possui experiencia e tem mais que 35 anos, se tudo for verdade, a variável mulher_mais35 também será acrescida e a matricula do candidato é salva em um vetor. Com isso teremos que:

quantidade_Sfeminino++;

if(candidato[i].experiencia=='s'||candidato[i].experiencia=='S'){

if(candidato[i].idade>35){

inscricao[mulheres_mais35]= candidato[i].inscricao;

mulheres_mais35++;

}

}

}

Caso o candidato não seja do sexo feminino, logo ele será do sexo masculino, assim, utilizar o comando else e incrementar na variável que conta a quantidade do sexo masculino.

else{

quantidade_sMasculino;

Agora verificaremos se o mesmo possui experiencia, caso tenha salvaremos o somatório de todas as idades para estabelecer a media posteriormente e a um acréscimo na quantidade de homens com experiencia. Assim:

if(candidato[i].experiencia=='s'||candidato[i].experiencia=='S'){

somatorio_idade=somatorio_idade+candidato[i].idade;

quantidade_homens_com_experiencia++;

Caso o candidato ainda possua idade menor que 35 anos, a variável homem_menos35 será acrescida. Assim:

if(candidato[i].idade<35){

homens_menos35++;

}

}

}

}

Agora podemos realizar os cálculos de porcentagem e de media. Com isso:

idademedia_homens_com_experiencia=somatorio_idade/quantidade_homens_com_experiencia;

homens_menos35=(homens_menos35/3823)*100;

float por_mulheres_mais35=(mulheres_mais35/3823)*100;

Por fim, devemos mostrar ao usuário todos os dados calculados.

cout<<"Matriculas de mulheres com experiencia e idade<35";

for(int i=0;i<mulheres_mais35;i++){

cout<<inscricao[mulheres_mais35]<<endl;

}

cout<<"Mulheres inscritas"<<quantidade_Sfeminino<<endl;

cout<<"Homens inscritos"<<quantidade_sMasculino<<endl;

cout<<"Idade media de homens com experiencia"<< idademedia_homens_com_experiencia<<endl;

cout<<"% de homens com experiencia e idade<35"<<homens_menos35<<endl;

cout<<"% de mulheres com experiencia e idade>35"<<por_mulheres_mais35<<endl;

return 0;

}

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