Ir ao conteúdo
  • Cadastre-se

Douglas987

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Pessoal alguem podia ajudar a fazer esse programa: Faça um programa pra um sistema acadêmico que gerencia o desempenho dos alunos da turma de Engenharia Elétrica. O programa deve conter um registro com os membros: nome, matrícula, nota, frequência e turma para os alunos. O programa deve receber esses valores pelo teclado para um certo número de alunos previamente digitados pelo teclado (para isso, utilize alocação de memória). Peça para o usuário digitar uma opção do seguinte menu e faça o que se pede: 1 - Cadastrar aluno; 2 - Excluir um aluno; 3 - Mostrar todos os alunos; 4 - Mostrar dados do aluno por nome; 5 - Mostrar dados do aluno por matricula; 6 - Mostrar todos os alunos de determinada turma; 7 - Ordenar alunos pelo NOME; 8 - Ordenar alunos pela MATRICULA; 9 - Ordenar alunos pela NOTA; 10 - Mostrar os alunos Aprovados e Reprovados; 11 - Sair. Considerações sobre cada uma das opções: 1 - Na opção CADASTRAR ALUNO, o usuário deve cadastrar aluno por aluno e quando desejar, podendo voltar a essa opção quando houver necessidade. O programa não deve aceitar alunos com o mesmo número de matrícula. 2 - Na opção EXCLUIR ALUNO o usuário deverá excluir determinado aluno utilizando para isso o seu número de matrícula. 3 - Na opção MOSTRAR TODOS OS ALUNOS, o programa deve mostrar todos os dados (Nome, Matrícula, Nota, Frequência, Turma) de todos os alunos que já foram cadastrados. Caso não haja alunos cadastrados o programa deve exibir a mensagem "Nenhum aluno cadastrado!". 4 - Na opção MOSTRAR DADOS DO ALUNO POR NOME, o usuário deve digitar o nome de um aluno e o programa deve mostrar todas as informações daquele aluno. Caso esse aluno não esteja cadastrado o programa deve exibir a mensagem "Aluno não encontrado". 5 - Na opção MOSTRAR DADOS DO ALUNO POR MATRÍCULA, o usuário deve digitar a Matrícula de um aluno e o programa deve mostrar todas as informações daquele aluno. Caso esse aluno não esteja cadastrado o programa deve exibir a mensagem "Aluno não encontrado". 6 - Na opção MOSTRAR TODOS OS ALUNOS DE DETERMINADA TURMA, o programa deve exibir todos os alunos e informações dos alunos de uma turma. Para isso o programa deve exibir um submenu com as seguintes opções: 1- Programação Computacional; 2- Cálculo 1; 3 - Física 1; 4 - Introdução a Engenharia. 7 - Na opção ORDENAR ALUNOS PELO NOME, o programa deve ordenar todos os nomes dos alunos em ordem alfabética e mostrar todas as suas informações ordenadas. 8 - Na opção ORDENAR ALUNOS PELA MATRÍCULA, o programa deve ordenar todas as matrículas dos alunos em ordem crescente e mostrar todas as suas informações ordenadas. 9 - Na opção ORDENAR ALUNOS PELA NOTA, o programa deve ordenar todas as notas dos alunos em ordem crescente e mostrar todas as suas informações ordenadas. 10 - Na opção MOSTRAR OS ALUNOS APROVADOS E REPROVADOS, o programa deve exibir todos os alunos aprovados e reprovados separadamente e suas informações. Considerar alunos aprovados aqueles com nota acima de 7 e frequência acima de 75% , sendo os demais reprovados. 11 - Na opção SAIR, o programa deve exibir a mensagem "Programa Finalizado." e encerrar. Outras considerações importantes: A opção 1- CADASTRAR ALUNO e 2 - EXCLUIR ALUNO, só poderá ser realizada por um usuário específico de alta prioridade (professores, coordenadores...). Para garantir isso, toda vez que for acessado uma destas duas opções o programa deve pedir uma senha específica. Atenção para no máximo três tentativas de senha, caso não aconteça o programa deve sair imediatamente. O programa deve ser executado enquanto o usuário não digitar a opção 11. O campo FREQUÊNCIA deve aceitar números entre 0% e 100%. O campo NOTA deve aceitar números entre 0 e 10. O campo MATRÍCULA deve aceitar números entre 00000 e 99999. O campo TURMA deve aceitar as turmas Programação Computacional, Cálculo 1, Física 1 e Introdução a Engenharia. Qualquer valor fora dessa faixa devem ser tratados adequadamente. adicionado 1 minuto depois #include<stdio.h> #include<stdlib.h> #include <string.h> void verifi_senhap(char senhap[3]){ int i=0; int n; for(n=0;n<strlen(senhap);n++){ if((senhap[n]>='0' && senhap[n]<='9')&& (senhap[3])!=(senhap[2])){ }else{ if((senhap[3])==(senhap[3])&&(senhap[3])==(senhap[4])&& (senhap[3])==(senhap[0])){ }else{ printf("DADO INVALIDO\n"); printf("\nDigite seu dia:\n"); gets (senhap); i=strlen(senhap); for(n=0;n<strlen(senhap);n++){ if((senhap[n]>='0' && senhap[n]<='9') && ((senhap[3])==(senhap[2]))){ }else{ if((senhap[3])!=(senhap[3])){ }else{ printf("DADO INVALIDO\n"); printf("\nDigite seu dia:\n"); gets (senhap); i=strlen(senhap); for(n=0;n<strlen(senhap);n++){ if((senhap[n]>='0' && senhap[n]<='9') && ((senhap[3])==(senhap[2]))){ }else{ if((senhap[3])!=(senhap[3])){ }else{ printf("DADO INVALIDO\n"); printf("\nERRO NO CADASTRO DE DADOS!\n"); exit(0); } } } } } } } } } } void verifi_nome(char nome[50]){ int i; for(i=0;i<strlen(nome);i++){ if((nome>='A' && nome<='Z') || (nome>='a' && nome<='z')){ }else{ if(nome!=('\n') && nome!=('0') && nome!=('1') && nome!=('2') && nome!=('3') && nome!=('4')&& nome!=('5') && nome!=('6') && nome!=('7') && nome!=('8') && nome!=('9')){ }else{ printf("DADO INVALIDO\n"); } } } } void verifi_turma(char turma[25]){ int i; for(i=0;i<strlen(turma);i++){ if(((turma>='A' && turma<='Z') || (turma>='a' && turma<='z') || (turma>='0' && turma<='9'))){ }else{ if(turma!=('!') && turma!=('#') && turma!=('$')&& turma!=('%')&& turma!=('&')&& turma!=('(')&& turma!=(')')&& turma!=('+')&& turma!=('-')&& turma!=('*')&& turma!=('/')&& turma!=('<')&& turma!=('>')&& turma!=('[')&& turma!=(']')){ }else{ printf("DADO INVALIDO\n"); } } } } void verifi_matricula(char matricula[5]){ int i=0,n; i=strlen(matricula); for(n=0;n<strlen(matricula);n++){ if((matricula[n]>='0' && matricula[n]<='9') && (matricula[5])!=(matricula[4])){ }else{ if((matricula[5])==(matricula[5])&&(matricula[5])==(matricula[6])&& (matricula[5])==(matricula[3])){ }else{ printf("DADO INVALIDO\n"); } } } } void verifi_frequencia(char frequencia[4]){ int i=0,n; i=strlen(frequencia); for(n=0;n<strlen(frequencia);n++){ if((frequencia[n]>='0' && frequencia[n]<='9') && (frequencia[4])!=(frequencia[3])){ }else{ if((frequencia[4])==(frequencia[4])&&(frequencia[4])==(frequencia[5])&& (frequencia[4])==(frequencia[2])){ }else{ printf("DADO INVALIDO\n"); } } } } typedef struct{ char nome[50],turma[25],matricula[5],frequencia[4],nota[2],senhap[3]; int op,alunos; }info; int main(){ int i; info A; int *pA; pA = &A.op; printf("Digite a quantidade de alunos:\n"); scanf("%i",&A.alunos); system ("cls"); printf (" SISTEMA ACADEMICO \n\n"); printf("Digite a opcao do menu: \n\n1 - Cadastrar aluno;\n\n2 - Excluir um aluno;\n\n3 - Mostrar todos os alunos;\n\n4 - Mostrar dados do aluno por nome;\n\n5 - Mostrar dados do aluno por matricula;\n\n6 - Mostrar todos os alunos de determinada turma;\n\n7 - Ordenar alunos pelo NOME;\n\n8 - Ordenar alunos pela MATRICULA;\n\n9 - Ordenar alunos pela NOTA;\n\n10 - Mostrar os alunos Aprovados e Reprovados;\n\n11 - Sair;\n\n"); scanf("%i",&A.op); system ("cls"); switch(*pA){ case 1: fflush(stdin); printf("Insira sua senha de segurança:\n"); gets(A.senhap); i=strlen(A.senhap); verifi_senhap(A.senhap); for(i=0;i<A.alunos;i++){ fflush(stdin); printf("Digite o Nome do aluno:\n"); gets(A.nome); verifi_nome(A.nome); printf("Digite a Turma do aluno:\n"); gets(A.turma); verifi_turma(A.turma); printf("Digite a Matricula do aluno:\n"); gets(A.matricula); verifi_matricula(A.matricula); printf("Digite a Frequencia do aluno:\n"); gets(A.frequencia); verifi_frequencia(A.frequencia); } } return 0; }

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...