Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Desenvolver um programa para realizar a correção de um prova de múltipla escolha.
- Os dados iniciais a serem lidos são:
- - A quantidade de candidatos (N) e
- - A quantidade de questões aplicadas (M).
- As respostas possíveis que poderão ser aceitas são: A, B, C, D e E.
- O primeiro conjunto de dados a ser lido será o gabarito com as respostas corretas das M questões.
- Após o gabarito, serão lidos os nomes as respostas de cada candidato.
- Os valores das questões são iguais.
- A nota máxima é 10 e a de classificação é 5.
- O programa deverá:
- a) Gerar o vetor NOTA; ----------------------- CHECK
- b) Apresentar o relatório geral contendo o nome do candidato e sua nota; ----------------------- CHECK
- c) Calcular e apresentar a média geral dos candidatos; ----------------------- CHECK
- d) Apresentar a quantidade e o percentual de classificados e desclassificados;
- e) Apresentar o relatório de candidatos classificados; ----------------------- CHECK
- f) Apresentar a melhor nota obtida e seu(s) respectivo(s) candidato(s); ----------------------- CHECK
- g) Gerar o vetor ACERTOS com o percentual correspondente e apresentá-lo. ----------------------- CHECK
- Trabalho realizado por Júlio César e Vitor Giuliani
- */
- #include <iostream>
- using namespace std;
- main()
- {
- int N, M;
- setlocale (LC_ALL, "Portuguese");
- cout<<"INFORMAÇÕES DA PROVA:"<<endl;
- cout<<"\nQuantidade de candidatos que participaram: "; cin>>N;
- cout<<"Quantidade de questões aplicadas: "; cin>>M;
- string nome[N], gabarito[M], tabela[N][M], maiornome[N];
- int l, c, i, clas=0, desc=0;
- float pontquestao, nota[N], acertos[M], media, maiornota;
- // GABARITO
- for(i=0; i<M; i++)
- {
- cout<<"Resposta da "<<i+1<<"ª questão: "; cin>>gabarito[i];
- if(gabarito[i]!="A" and gabarito[i]!="B" and gabarito[i]!="C" and gabarito[i]!="D" and gabarito[i]!="E")
- {
- cout<<"\nResposta inválida! Tente novamente.";
- i=i-1;
- cout<<endl;
- }
- }
- // FIM GABARITO
- // NOMES
- cout<<"\nRELAÇÃO DOS CANDIDATOS:"<<endl;
- for(l=0; l<N; l++)
- {
- cout<<"Nome do "<<l+1<<"º candidato: "; cin>>nome[l];
- // RESPOSTAS
- for(c=0; c<M; c++)
- {
- cout<<"Resposta marcada na "<<c+1<<"ª questão: "; cin>>tabela[l][c];
- if(tabela[l][c]==gabarito[c])
- {
- acertos[c]=acertos[c]+1;
- }
- if(tabela[l][c]!="A" and tabela[l][c]!="B" and tabela[l][c]!="C" and tabela[l][c]!="D" and tabela[l][c]!="E")
- {
- cout<<"\nResposta inválida! Tente novamente."<<endl;
- c=c-1;
- }
- }
- // FIM RESPOSTAS
- cout<<endl;
- }
- // FIM NOMES
- pontquestao = 10/M;
- // ACUMULADOR NOTA
- for(l=0; l<N; l++)
- {
- nota[l]=0;
- for(c=0; c<M; c++)
- {
- if(tabela[l][c]==gabarito[c])
- {
- nota[l]=nota[l]+pontquestao;
- if(nota[l]>maiornota)
- {
- maiornota=nota[l];
- maiornome[c]=nome[c];
- }
- }
- }
- }
- // FIM ACUMULADOR NOTA
- // RELATÓRIO ALUNOS
- cout<<"\n\nRELATÓRIO DOS ALUNOS: \n\n";
- for(i=0; i<N; i++)
- {
- cout<<i+1<<"º aluno: "<<nome[i]<<" / Nota: "; cout<<nota[i]<<endl;
- if(nota[i]>=5)
- {
- cout<<"Aluno classificado!"<<endl;
- clas++;
- }
- else
- {
- cout<<"Aluno desclassificado!"<<endl;
- desc++;
- }
- cout<<endl;
- }
- // FIM RELATÓRIO ALUNOS
- // ALUNOS APROVADOS
- cout<<"\nRelatório de alunos aprovados: \n";
- for(i=0; i<N; i++)
- {
- if(nota[i]>5)
- {
- cout<<i+1<<"º aluno: "<<nome[i]<<endl;
- }
- }
- // FIM ALUNOS APROVADOS
- // MÉDIA
- for(i=0;i<N;i++)
- {
- media=media+nota[l];
- }
- // FIM MÉDIA
- // SAÍDA
- media=media/N;
- cout<<"\n\nMÉDIA DOS ALUNOS: "<<media<<endl;
- cout<<"Quantidade & Percentual de Alunos Classificados: "<<clas<<" alunos / "<<clas*100/N<<"% da turma;"<<endl;
- cout<<"Quantidade & Percentual de Alunos Desclassificados: "<<desc<<" alunos / "<<desc*100/N<<"% da turma."<<endl;
- // FIM SAÍDA
- // CANDIDATOS MAIOR NOTA
- for(i=0;i<N;i++)
- {
- if(nota[i]==maiornota)
- {
- cout<<"\n"<<i+1<<"º candidato com a maior nota: "<<maiornome[i]<<", com nota "<<maiornota<<".";
- }
- }
- // FIM CANDIDATOS MAIOR NOTA
- // VETOR ACERTOS
- cout<<"\n\nQuantidade de acertos para cada questão: "<<endl;
- for(i=0;i<M;i++)
- {
- acertos[i]=(acertos[i]/N*100.0);
- cout<<i+1<<"ª questão: "<<acertos[i]<<"%"<<endl;
- }
- cout<<endl;
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement