• Matéria: Informática
  • Autor: Anônimo
  • Perguntado 7 anos atrás

Um cinema fez uma pesquisa através de um questionário sobre um filme e recebeu 20 respostas. Cada questionário contem a idade do espectador e sua opinião em relação ao filme, segundo as seguintes notas: 5 – ótimo, 4 – bom, 3 –regular, 2 –ruim, 1 –péssimo. Elabore um programa em C leia estes dados, calcule e imprima:
a) A quantidade de respostas de cada tipo de nota dada ao filme;
b) A média de idade das pessoas que responderam ruim;
c) A percentagem de respostas péssimo;
d) A maior idade de quem respondeu regular;
e) Média de idade das pessoas que responderam ótimo ou bom

Respostas

respondido por: lamartinecezarpbm3x5
1

Resposta:

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

int idade = 0;

int opiniao = 0;

int pess, ruim, regular, bom, otimo, soma_ruim, soma_bom, soma_otimo, maior_idade = 0;

void menu(){

int i;

printf("\n\nO que você achou do filme: "

  "\n1 - Péssimo."

  "\n2 - Ruim."

  "\n3 - Regular."

  "\n4 - Bom."

  "\n5 - Ótimo.");

}

void info(){

printf("\nDigite sua idade: ");

scanf("%d", &idade);

menu();

printf("\nEscolha sua opção: ");

scanf("%d", &opiniao);

switch (opiniao){

 case 1:

  pess++;

 break;

 case 2:

  ruim++;

  soma_ruim = soma_ruim + idade;

 break;

 case 3:

  regular++;

 break;

 case 4:

  bom++;

  soma_bom = soma_bom + idade;

 break;

 case 5:

  otimo++;

  soma_otimo = soma_otimo + idade;

 break;

}

}

int main(){

setlocale(LC_ALL, "Portuguese");

int op = 0;

float media;

float per;

do{

 info();

 op++;  

}while ( op < 20 );

printf("\n\n\nRESPOSTA DE CADA TIPO DE NOTA DADA AO FILME:");

printf("\n\nQuantidade que escolheram péssimo: %d", pess );

printf("\nQuantidade que escolheram ruim: %d", ruim);

printf("\nQuantidade que escolheram ruim regular: %d", regular);

printf("\nQuantidade que escolheram ruim bom: %d", bom);

printf("\nQuantidade que escolheram ruim ótimo: %d", otimo);

 

printf("\n\nMÉDIA DA IDADE DAS PESSOAS QUE ESCOLHERAM RUIM: %d", soma_ruim / ruim);

printf("\n\nPORCETAGEM DAS PESSOAS QUE ESCOLHERAM PÉSSIMO: %.2f ", per = ( pess * 100 )/ op );

media = ( soma_otimo + soma_bom ) / op;

printf("\n\nMÉDIA DA IDADES DAS PESSOAS QUE RESPONDERAM ÓTIMO OU BOM: %.2f", media);

 

return 0;

}

Explicação:

Segue o algoritmo em C, o programa está bem simples. Você pode e deve implementar alguns tratamentos para não acontecerem erros quando os usuários digitarem algo que não existe no menu, por exemplo. O programa vai executar 20 vezes pedindo todas as informações, caso queira mudar a quantidade basta mudar o WHILE ( OP < 20 ) para uma quantidade maior ou menor. Como falei, está bem simples mas já ajuda a você seguir um caminho na hora de desenvolver seu código. Segue print do programa funcionando. Qualquer dúvida estou à disposição.

Anexos:

Anônimo: o programa da um erro na hora de rodar: Caractere '\240' inválido no programa
o que eh isso?
tem alguma outra coisa q eu posso utilizar no lugar de "do" nessa linha (do{

info();

op++;
lamartinecezarpbm3x5: Eu copiei, colei e executei. Está rodando normalmente, tira um print da sua tela com o erro que fica mais fácil. Qual programa você está usando para rodar o código?
Anônimo: to usando o falcon c++. Nao consigo postar imagem aqui.
O que posso usar ao inves do comando "do" no programa?
O erro que aparece eh exatamente esse em varias linhas do programa: Caractere '\240' inválido no programa.
lamartinecezarpbm3x5: o DO faz parte do loop WHILE , retirar o DO terá que refazer o código apenas usando o WHILE ou um FOR. Copiei e colei em outros programas nenhum deles acontece esse erro, usei o DEV C++,o CODE, ONLINEGDB, e todos funcionaram.
nbavini: Man tem como me mandar no email (vinififasampa @ gmail .com) junta o email
Estou querendo a mesma questao, so que tambem nao ta rodando aqui. Vlw
lamartinecezarpbm3x5: Vou te enviar o arquivo do programa pelo email, desenvolvi no DEV C++.
joseeduardogoes22: Me mande tambem pro meu email ( joseeduardogoes22 @ gmail .com )
lamartinecezarpbm3x5: Mando sim.
Perguntas similares