Buscar

Gab 1ºEE 2014.2

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

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

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ê viu 3, do total de 4 páginas

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

Prévia do material em texto

Observações gerais: 
1) Preencher os dados do cabeçalho do bloco de provas e na folha de questões o nome e a turma; 
2) Ao final da prova entregar ao professor ou fiscal a folha de questões e o caderno de prova; 
3) Cada quesito vale cinco pontos. 
 
1º quesito: Escreva um programa em C para auxiliar a realização de uma pesquisa eleitoral para o 
segundo turno das eleições para o cargo de presidente da república do Brasil. Inicialmente seu programa 
deve ler do usuário a quantidade de cidades envolvidas na pesquisa. Em seguida, para cada cidade, 
deverá ser lida a quantidade de eleitores ouvidos pelos entrevistadores e deve ser exibido na tela o 
seguinte menu com as opções de voto: 
1: Dilma 
2:Aecio 
3:Nulo 
4:Branco 
5:Indefinido 
Cada entrevistado, em cada cidade, deve escolher sua opção de voto digitando o número inteiro exibido 
no menu. Após serem colhidas todas as intenções de votos de cada cidade, deve ser exibido o percentual 
de votos para cada opção, referente somente à cidade em questão. O programa deve exibir o menu de 
forma repetitiva até que uma opção válida seja digitada (qualquer número maior ou igual a 1 ou menor 
ou igual a 5). 
 
Após serem lidos todas as intenções de votos, de todos os eleitores, de todas as cidades, deve ser exibido 
na tela os percentuais de voto dos candidatos Aécio Neves e Dilma Rousseff (considerando todos os 
eleitores dentre todas as cidades envolvidas). 
Além disso, considerando uma margem de erro de 2 pontos percentuais para mais ou para menos, caso 
os candidatos estejam tecnicamente empatados deve ser exibida na tela uma mensagem informando o 
empate técnico 
 
Obs.: A função fabs() pode ser usada para calcular a diferença absoluta entre dois números reais. 
 Todos os números reais impressos na tela devem usar precisão de duas casas decimais. 
 
#include <stdio.h> 
#include <stdlib.h> 
 
int main() 
{ 
 int votos_dilma = 0, votos_aecio = 0, votos_branco = 0, votos_nulos = 0; 
 int votos_indecisos = 0, num_cidades, num_eleitores, cont_cidades, cont_eleitores; 
 int voto, cont, total_votos_aecio = 0, total_votos_dilma = 0, total_votos = 0; 
 
 do{ 
 printf("informe a quantidade de cidades: "); 
 scanf("%d",&num_cidades); 
 }while(num_cidades <= 0); 
 
 for(cont_cidades = 0; cont_cidades < num_cidades; cont_cidades++) 
 { 
 printf("\ninforme o numero de eleitores na cidade %d:\n",cont_cidades+1); 
 scanf("%d",&num_eleitores); 
 printf("Por favor, informe seu voto:\n0: Dilma\n1:Aecio\n2:Nulo\n3:Branco\n4:Indefinido\n"); 
 for(cont_eleitores = 0; cont_eleitores < num_eleitores; cont_eleitores++) 
 { 
 do{ 
 scanf("%d",&voto); 
 }while(voto < 0 || voto > 4); 
ÁREA II – CCEN / UFPE 
Disciplina: IF 165 – Computação Eletrônica – 1º Exercício Escolar 2014.2 Data: 14/10/ 2014 
Nome legível do aluno: ................................................................................................. Turma ......... 
 
 
 
 switch(voto) 
 { 
 case 0: 
 votos_dilma++; 
 break; 
 case 1: 
 votos_aecio++; 
 break; 
 case 2: 
 votos_nulos++; 
 break; 
 case 3: 
 votos_branco++; 
 break; 
 case 4: 
 votos_indecisos++; 
 break; 
 } 
 } 
 total_votos+=num_eleitores; 
 total_votos_aecio+=votos_aecio; 
 total_votos_dilma+=votos_dilma; 
 printf("\nResultado na cidade %d",cont_cidades+1); 
 printf("\nPercentual de votos em Dilma: %.2f", 100*votos_dilma/(float)num_eleitores); 
 printf("\nPercentual de votos em Aecio: %.2f", 100*votos_aecio/(float)num_eleitores); 
 printf("\nPercentual de votos Nulos: %.2f", 100*votos_nulos/(float)num_eleitores); 
 printf("\nPercentual de votos Brancos: %.2f", 100*votos_branco/(float)num_eleitores); 
 printf("\nPercentual de votos Indecisos: %.2f", 100*votos_indecisos/(float)num_eleitores); 
 votos_dilma = 0; 
 votos_aecio = 0; 
 votos_branco = 0; 
 votos_nulos = 0; 
 votos_indecisos = 0; 
 } 
 
 printf("\n\nRESULTADO FINAL DA PESQUISA:"); 
 printf("\nPercentual de votos em Dilma: %.2f", 100*total_votos_dilma/(float)total_votos); 
 printf("\nPercentual de votos em Aecio: %.2f", 100*total_votos_aecio/(float)total_votos); 
 if(abs(100*total_votos_aecio/(float)total_votos - 100*total_votos_dilma/(float)total_votos) <= 4 ){ 
 printf("\nAviso! A pesquisa informa um empate tecnico entre os candidatos!"); 
 } 
 return 0; 
} 
 
2º quesito: A prefeitura do Recife deseja fazer uma pesquisa socioeconômica entre seus habitantes. Faça 
um programa em C para coletar dados sobre o salário, número de filhos (valores ≥ 0) e escolaridade (F - 
fundamental, M - médio, S – superior) de cada habitante. Validar as entradas número de filhos e 
escolaridade para que estejam no intervalo de valores válidos. 
 
Após as leituras o programa deve calcular e apresentar na tela: 
a) Média do salário da população; 
b) Média do número de filhos; 
c) Escolaridade média da população (para este cálculo considere os seguintes pesos F=1; M=2; S=3); 
d) Maior salário dos habitantes; 
e) Percentual de pessoas com salário menor que R$ 500,00; 
 
O final da leitura dos dados dos habitantes se dará com a entrada de um valor negativo no campo salário 
(os valores deste habitante não devem ser considerados no cálculo). 
 
Obs.: Todos os números reais impressos na tela devem usar precisão de duas casas decimais. 
 
 
 
 
 
#include <stdio.h> 
int main() 
{ 
 float salario, somaSalario = 0, maxSalario = 0, escolaridadeMedia = 0; 
 int salario500 = 0, filhos, somaFilhos = 0, somaEscolaridade=0, conta=0; 
 char escolaridade; 
 
 do { 
 printf("Entre com o salario (negativo para terminar): "); 
 scanf("%f", &salario); 
 
 if (salario>=0) { 
 
 somaSalario+=salario; 
 if (salario<500) 
 salario500++; 
 
 if (salario>maxSalario) 
 maxSalario = salario; 
 
 do { 
 printf("Entre com o numero de filhos (maior ou igual a zero): "); 
 scanf("%d", &filhos); 
 } while (filhos<0); 
 
 somaFilhos+=filhos; 
 
 do { 
 printf("Entre com a escolaridade (F - fundamental, M - médio, S - superior): "); 
 scanf(" %c", &escolaridade); 
 } while (escolaridade!='F' && escolaridade!='M' && escolaridade!='S'); 
 
 switch (escolaridade) { 
 case 'M': somaEscolaridade+=1; 
 break; 
 case 'F': somaEscolaridade+=2; 
 break; 
 case 'S': somaEscolaridade+=3; 
 break; 
 } 
 
 conta++; 
 } 
 
 } while (salario>0); 
 
 printf("O salario medio: %.2f\n", somaSalario/conta); 
 printf("Media de filhos: %.2f\n", ((float)somaFilhos)/conta); 
 
 escolaridadeMedia = ((float)somaEscolaridade)/conta; 
 if (escolaridadeMedia<1.5) 
 printf("Escolaridade media: F\n"); 
 else if (escolaridadeMedia<2.5) 
 printf("Escolaridade media: M\n"); 
 else 
 printf("Escolaridade media: S\n");printf("Maior salario: %.2f\n", maxSalario); 
 printf("Percentual de salario menor que 500: %.2f%\n", 100*((float)salario500)/conta); 
 
 return 0; 
}

Outros materiais