Ir ao conteúdo

Posts recomendados

Postado

Boa noite

Estou aprendendo a manipular arquivo, e por enquanto só sei ler, ou gravar um novo arquivo. 

 

Me deparei com este exercício:  

Citação

a.arquivo gabarito.txt contém as respostas para uma prova com 30 questões objetivas, sendo que cada resposta está em uma linha dele. As respostas são numeradas de 1 a 5, indicando qual é a opção correta para cada uma das questões da prova.

1

2

3

5

4 . . .

b) O arquivo prova.txt contém as respostas que um grupo de n alunos marcou para cada uma das questões da prova descrita no item a), sendo que as respostas de cada aluno estão numa mesma linha, separadas por ; (ponto e vírgula). A primeira informação de cada linha contém o RA do aluno que respondeu à questão, as seguintes são as respostas para cada uma das questões da prova.

123456;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5

345678;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1 ...

 

E a partir desses arquivos anexados resolver isto: 

Escreva um programa em linguagem C para:

a) Para cada uma das provas registradas no arquivo provas.txt, grave uma saída contendo: O RA do aluno O número de acertos do aluno A nota obtida (cada questão vale 0.5 pontos) Aprovado se a nota for maior ou igual a 7.5, ou Reprovado caso contrário O conjunto de saídas deve ser gravado em um arquivo chamado resultado.txt, conforme o modelo a seguir: ------------------------------

RA.........: 123456

Acertos....: 10

Nota.......: 5,0

Resultado..: Reprovado

------------------------------

b) Mostre na tela o conteúdo do arquivo resultado.txt

 

A minha dúvida é, como é possível comparar dois arquivos txt, ainda mais possuindo esses ";" e o outro com quebra de linha? Obrigado.

gabarito.txt prova.txt

  • Obrigado 1
Postado

@Larissa Maia quer comparar se os arquivos são iguais ou saber a diferença deles? só fiz isso no python, batch e no bash então não vou saber ajudar em c.

 

para windows acho que se fizer system("FC /<opção> nome1.txt nome2.txt") deve funcionar, nunca tentei.

no caso do Linux creio que seria o diff

 

  • Curtir 1
Postado

@Swalls o que eles tem de iguais, porque um arquivo é as respostas de uma prova, e outro é o gabarito, ai preciso compara-los pra ver a quantidade de acerto e calcular a nota a partir daí....

  • Curtir 1
Postado
1 hora atrás, Larissa Maia disse:

Estou aprendendo a manipular arquivo, e por enquanto só sei ler, ou gravar um novo arquivo

 

Não pode fazer muito mais que isso com eles mesmo. E nesse caso basta ler.

 

1 hora atrás, Larissa Maia disse:

como é possível comparar dois arquivos txt, ainda mais possuindo esses ";" e o outro com quebra de linha

 

arquivos de texto são assim, orientados por linha. É o mesmo caso dos dois. O fato das respostas serem separadas por ';' nada tem a ver com o arquivo. Ao ler cada linha vai ler o que tiver lá. Pode ler com fgets() e terá a linha toda. E pod separar as notas lendo as letras da linha em um loop, ou usar uma função que faz isso, como sscanf(). Veja no manual.

 

Eu postei muitos programas aqui que fazem isso. Pode ver no conteúdo no forum pesquisando meu perfil. Estou ocupado agora pra procurar.

 

Não poste anexos. Deixe os arquivos no post. E resuma as coisas: Não precisa de mais que 2 respostas para mostrar o que quer.

 

E não use todas iguais ou não vai saber se está tratando as respostas certas. E as provas certas...

 

 

gabarito.txt
 

1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5

 

Prova.txt

 

123456;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5;1;2;3;4;5
345678;2;3;4;4;1;2;3;4;5;1;2;3;4;5;1;1;3;4;5;1;2;3;4;5;1;2;3;4;5;1
987654;3;4;5;4;2;3;4;5;1;2;3;4;5;1;2;1;4;5;1;2;3;4;5;1;2;3;4;5;1;2
345213;4;5;1;4;3;4;5;1;2;3;4;5;1;2;3;1;5;1;2;3;4;5;1;2;3;4;5;1;2;3
654378;1;2;4;4;3;1;2;4;5;3;1;2;4;5;3;1;2;4;5;3;1;2;4;5;3;1;2;4;5;3
235671;2;3;4;4;5;2;3;2;5;1;3;4;4;1;5;1;3;4;1;5;2;3;4;1;5;2;3;4;1;5
764389;4;2;5;4;3;4;2;5;1;3;4;2;5;1;3;1;2;5;1;3;4;2;5;1;3;4;2;5;1;3
654899;2;5;1;4;4;2;5;1;3;4;2;5;1;3;4;1;5;1;3;4;2;5;1;3;4;2;5;1;3;4
435677;5;3;1;4;4;5;3;1;2;4;5;3;1;2;4;1;3;1;2;4;5;3;1;2;4;5;3;1;2;4
213421;5;1;3;4;2;5;1;3;4;2;5;1;3;4;2;1;1;3;4;2;5;1;3;4;2;5;1;3;4;2

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!