Questão 1: Crie uma TAD (Tipo Abstrato de Dados) que gerencie uma Estrutura de Dados, vetor DINÂMICO (alocação dinâmica de memória), de Alunos de uma turma. O dado do tipo ALUNO deve conter:
Nome (sequência de até 50 caracteres, pode conter espaços); Matrícula (número inteiro); Idade (número inteiro); Nota_1 (valor entre 0 e 10); Nota_2 (valor entre 0 e 10); Média Final (valor entre 0 e 10); Situação (aprovado OU reprovado); Cálculo da Média Final e situação do aluno: MF = Nota_1*0.4 + Nota_2*0.6; MF ≥ 6 Aprovado; MF < 6 Reprovado; a) INICIALMENTE deve ser perguntado ao usuário quantos alunos ele quer inserir na estrutura de alunos. Em seguida, solicitar memória suficiente para cadastrar essa quantidade e já inserir os dados desses alunos na estrutura. o OBS: sempre que for inserir uma das NOTAS, só aceitar uma nota entre o valor 0 (zero) e 10 (dez); o Assim que receber as notas de um aluno, já pode calcular a média e atualizar a situação do mesmo. b) Permitir que o usuário informe se deseja inserir mais alunos, realocando a memória a cada solicitação do usuário. c) No arquivo principal, criar um MENU de opções para o usuário. Contendo, no mínimo, as funções de: Inserir novo(s) aluno(s) (REALLOC sempre inserindo no final da estrutura); o Assim que feito o realloc, já inserir os dados desses novos alunos no fim da estrutura. o OBS: sempre que for inserir uma das NOTAS, só aceitar uma nota entre o valor 0 (zero) e 10 (dez); o Assim que receber as notas de um aluno, já pode calcular a média e atualizar a situação do mesmo. Buscar um aluno pela posição na estrutura; o Realizar processo de verificação, garantindo que a posição digitada está de acordo com o tamanho da estrutura, ou seja, não aceitar uma posição menor que 1, nem maior do que o tamanho da estrutura naquele momento; o Após busca, perguntar se deseja alterar a Nota_1 ou Nota_2 do aluno; Se SIM receber novo(s) valor(es) e recalcular a Média Final e situação do devido aluno buscado; Calcular a Média Final Aritmética de toda a turma; Listar todos os alunos cadastrados na Lista (com um índice do lado); o Exemplo: 1 – Dados Aluno_1; 2 – Dados Aluno_2; ... n – Dados Aluno_n. Limpar Lista antes de fechar o programa;
Pergunta
mAthScript
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.