next up previous
Next: About this document ...

MAC-IME-USP IMRE SIMON CARLOS EDUARDO FERREIRA


SALA 290A TEL.: 3818 6142 SALA 297A TEL.: 3818 6140


EMAIL is@ime.usp.br E-MAIL cef@ime.usp.br


MONITORA: ELIDIA Y. ITIKAWA MONITOR: MARCIO C. CABRAL




MAC 122 - Princípios de Desenvolvimento de Algoritmos

Segundo semestre de 2000

Exercício-Programa 1 - Entrega: 19 de setembro de 2000



Contando os formados

Uma tarefa que todo ano é executada pelas seções de alunos das unidades é verificar quais alunos completaram o curso e deverão portanto colar grau naquele ano, e quais ainda estão devendo disciplinas. O objetivo deste exercício-programa é automatizar esta tarefa.

Seu programa deverá ler um arquivo curriculo.txt contendo a estrutura curricular de um curso no seguinte formato:

#obrig   #optativas #créditos em opt na área  #créditos em fora de área
obrig. 1
obrig. 2
.
.
.
opt. 1
opt. 2
.
.
.

Na primeira linha é dado o número de disciplinas obrigatórias, disciplinas optativas, número de créditos em optativas na área e o número de créditos em disciplinas fora de área necessários para que o aluno se forme. No caso do currículo do BCC, o arquivo de entrada contendo o currículo seria o abaixo. Você pode supor que fora de área é qualquer disciplina que não aparece nas tabelas acima (a regra do BCC diz que fora de área é qualquer disciplina de sigla diferente de MAC, MAE, MAP e MAT. Se quiser, implemente esta regra).

31 55 32 6
MAC110
MAE121
.
.
.
MAC499
MAC310
MAC322
.
.
.
PCS308

Além disso, seu programa deverá ler um arquivo alunos.txt contendo as informações dos alunos do curso. As informações armazenadas para cada aluno são seu nome, data de nascimento, NUSP, número de disciplinas em que o aluno obteve aprovação e a lista destas disciplinas, contendo, para cada uma, a sigla da disciplina e o número de créditos. Abaixo segue um pedaço do arquivo correspondente a um determinado aluno:

.
.
José da Silva
21 12 1979
3267962
11
MAC110 4
MAE121 4
MAT131 12
MAE221 4
MAT138 4
MAC122 4
MAC323 4
MAC442 4
PCS305 4
FLM112 3
PST110 2
.
.

Seu programa deverá ler todas as informações e produzir um relatório contendo a lista de alunos formados do ano, ordenada em ordem alfabética, e uma outra lista, também em ordem alfabética com os alunos que ainda não se formaram, indicando, para cada aluno, o que ainda precisa ser cursado. Note que os arquivos de entrada não precisam estar ordenados de nenhuma forma.

A entrada correspondente ao aluno acima deverá ser algo como:

 
.
.
José da Silva  21/12/1979  3267962
Deve as obrigatórias: MAT139 MAT213 ... MAC499
Deve 24 créditos em optativas na área
Deve 1 crédito em optativas fora da área
.
.

Observações




next up previous
Next: About this document ...
Carlos Eduardo Ferreira
2000-08-23