MC102: Algoritmos e Programação de Computadores - Turmas K e L

Zanoni Dias (PED)

 

Quinto Exercício de Laboratório

 

 

Alunos

 

Suponha que os dados relativos a um conjunto de alunos sejam fornecidos de tal forma que cada linha representa um aluno de acordo com o formato exemplificado a seguir:

 

998765 Maria Helena Fernandes                   7.7

987534 Ana Maria Carvalho                       3.5

005678 Joao Araujo da Silva Filho              10.0

 

O primeiro dado é o RA do aluno, seguido de um espaço em branco.  O segundo dado é o nome completo do aluno, ocupando sempre 40 posições.  Os nomes utilizarão apenas as letras comuns, minúsculas e maiúsculas, sem acentos. Finalmente, vem a nota do aluno, num campo de comprimento quatro, com um ponto decimal, e um dígito após o ponto.

 

O Programa

 

Escreva e teste um programa que:

 

·         Lê as linhas correspondentes aos alunos, até que seja encontrada uma linha começando com o valor 000000 (o número máximo de alunos será 200).

·         Imprime, em ordem decrescente de notas, os RAs, endereços eletrônicos e as notas de cada aluno (use a formatação ":4:1" para as notas), como no exemplo::

   

005678 Joao.Filho@unicamp.br                   10.0

998765 Maria.Fernandes@unicamp.br               7.7

987534 Ana.Carvalho@unicamp.br                  3.5

 

     A parte de endereço eletrônico tem 40 posições.  Note que para a composição do endereço eletrônico do aluno é usado seu primeiro e último nome, unidos por um ponto, e o dominio "unicamp.br".

 

·         Imprime a média das notas dos alunos com dois dígitos de precisão (use a formatação ":2:2")

 

No caso do exemplo acima, a saída completa deve ser:

 

005678 Joao.Filho@unicamp.br                   10.0

998765 Maria.Fernandes@unicamp.br               7.7

987534 Ana.Carvalho@unicamp.br                  3.5

Media: 7.07

 

Sugestão: Guarde as informações relativas aos alunos num vetor de registros de tipo conveniente. Após a leitura, ordene os registros por base das notas. A média pode apresentar problemas de arredondamento, é normal, como já foi discutido em sala de aula. Para facilitar a compatibilidade não use funções de arrendamento como "int" ou "trunc", apenas formatação de impressão (usando o especificador ":").

 

Entrega

 

O programa é estritamente individual e deverá ser entregue até dia 03 de dezembro através da Web Page do curso (www.ic.unicamp.br/~zanoni/mc102). Maiores detalhes serão discutidos em sala de aula e no laboratório.