Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Isaias Tavares

Interpreção da Matriz

Recommended Posts

Nesse exercicio, o problema é interpretação, não estou conseguindo entender o que o exercício está pedindo.

 

Escreva um algoritmo que armazene na primeira coluna da matriz R[6,11] caracteres que representam o gabarito de uma prova. A seguir, para cada um dos 10 alunos da turma, leia a respostas do aluno e conte o número de acertos. As respostas devem ser armazenadas nas colunas seguintes. Em seguida mostre o no de acertos de cada aluno e uma mensagem APROVADO, se a nota for maior ou igual a 6; ou REPROVADO, caso contrário.

 

Nesse caso, a matriz seria algo desse tipo?

 

[table=Gabarito]a V F V F F F F F F F V

b F V F F F F V F F F F

c F F F F F F F F V F F

d F F F F V F F F F V F

e F F F F F V F F F F F

f F F F V F F F V F F F[/table]

 

Sei que a pergunta é idiota, mas realmente não entendi

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isaias Tavares,

 

Pelo o que entendi,na primeira coluna é o gabarito. Nas colunas seguintes tu entra com os resultados de cada questão e de cada aluno.

No fim da coleta de dados compara esses resultados com o gabarito que está ali na primeira coluna e incrementa os respectivos contadores, iNumAcertos e iNumErros.

 

Um pseudo-código desta comparação, poderia ser assim:

int iContador;
for(iContador = 1; iContador < 11; iContador++) {
if(R[iContador] == R[0])
	iNumAcertos += 1;
else
	iNumErros += 1;
}

 

OBS.: Uma dúvida nunca é idiota, pois é sanando esta dúvida que tu vai aprender mais.

Como diz o ditado "é errando que se aprende".

 

Espero ter ajudado, FLW! :grin:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que agora entendi, muito obrigado!

 

Eu fiz dessa forma:

 

#include <stdio.h>
int main ()
{
   int i, j, acertos, erros;
   float nota;
   char R[6][11];
   for (i=0; i<6; i++) {
       R[i][0] = 'a';
   }
   for (j=1; j<11; j++) {
       for (i=0; i<6; i++) {
           printf("Qual a resposta do aluno %d para a questão %d?\n", j, i+1);
           scanf("%s", &R[i][j]);
       }
   }
   for (i=0; i<6; i++) {
       acertos=0;
       erros=0;
       for (j=1; j<11; j++) {
           if (R[i][j] == R[i][0])
               acertos++;
           else
               erros++;
       }
       printf("O aluno %d teve %d acertos", j, acertos);
       nota=(acertos*10)/6;
       if (nota >= 6)
           printf("Aluno %d está APROVADO", j);
       else
           printf("Aluno %d está REPROVADO", j);
   }
   return 0;
}

 

Só que a leitura não para, não sei porque, sou péssimo em string, sei mexer com isso não, se alguem puder me ajudar, fico grato! kkkk

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.