Fábio Carvalho Admin
Mensagens : 54 Data de inscrição : 15/02/2013
| Assunto: 3º e 2º Trabalho da professora Débora Sex Abr 12, 2013 7:48 am | |
| Cuidado com as pegadinhas dela, se ela ver que ta igual é 0. =P Trabalho: Construa um programa de cadastro de aluna baseado na lista que foi enviado pelo AVA. Este cadastro deve possuir uma média das idades dos alunos, e uma função para apagar a posição do aluno. Também deve conter cadastro, nome, idade e nota de um aluno. Lista.h - Citação :
- #include<conio.h>
#include<iostream> #include<stdio.h> #include<string> using namespace std; #define MaxTam 3 struct Elemento { string nome; float nota; };
struct TLista{ Elemento item[MaxTam]; int primeiro, ultimo; };
void FLVazia(TLista &Lista) { Lista.primeiro = 0; Lista.ultimo = Lista.primeiro; }
int Vazia(TLista Lista) { return (Lista.primeiro == Lista.ultimo); }
void Insere(TLista &Lista, Elemento x) { if (Lista.ultimo == MaxTam) printf("Lista está cheia\n"); else { Lista.item[Lista.ultimo] = x; Lista.ultimo++; } }
void RetiraAluno(TLista &Lista, Elemento &item) { int aux ; string Nome; cout<<"\n Digite o nome a ser pesquisado: "; fflush(stdin); getline(cin,Nome); cout<<"Pesquisando...\n"; for(aux = Lista.primeiro; aux < Lista.ultimo; aux++){ if (Nome==Lista.item[aux].nome) { cout<<"Nome encontrado com sucesso: "; cout<<"\n Iniciando a exclusao."; cout<<"\n."; cout<<"\n."; cout<<"\n."; cout<<"\n."; cout<<"\n."; Lista.item[aux]=Lista.item[aux + 1]; cout<<"Nome excluido com sucesso!"<<endl; } else { cout<<"\n Erro, tente novamente."; } } }
void Imprime(TLista Lista) { int aux; for (aux = Lista.primeiro; aux < Lista.ultimo; aux++) { printf("%s \n", Lista.item[aux].nome); printf("%f \n", Lista.item[aux].nota); } }
void Alterar_aluno(TLista &Lista, string Nome, Elemento &item) { int aux ; cout<<"\n Digite o nome a ser pesquisado: "; fflush(stdin); getline(cin,Nome); cout<<"Pesquisando...\n"; for(aux = Lista.primeiro; aux < Lista.ultimo; aux++){ if (Nome==Lista.item[aux].nome) { Lista.item[aux].nome = item.nome; cout<<"\n Nome encontrado!"; cout<<"\n Digite o novo novo nome a ser substituido: "; fflush(stdin); getline(cin,item.nome); cin>>item.nota;} } } Programa principal - Citação :
#include <lista.h>
void cadastro(Elemento x, Tlista &lista){
cout<<"\n Insira o nome do Aluno: "; fflush(stdin); getline(cin,x.nome); cout<<"\n Insira a idade do Aluno: "; cin>>x.idade; cout<<"\n Insira a nota do Aluno: "; cin>>x.nota; Insere(lista,x); system("cls"); }
float MediaIdades(Tlista lista) { float soma=0; if (lista.ultimo>0) { for (int i=0; i<lista.ultimo; i++) soma+=lista.item[i].idade; return soma/lista.ultimo; } else return 0; }
void menu (Elemento &item,Tlista &lista){ { string Nome; system("cls"); int p ; int op = 0; while (op != 6) { printf("\n Bem vindo ao programa de cadastro."); printf("\n Pressione o n%cmero correspondente ao desejado.",163); printf("\n 1 - Para cadastro."); printf("\n 2 - Alterar dados."); printf("\n 3 - Excluir dados."); printf("\n 4 - M%cdia das idades.",130); printf("\n 5 - Relat%crio.",162); printf("\n 6 - Sair."); printf(" "); cin >> op; system("cls");
if (op == 1){ cadastro(item,lista); }
if (op == 2){ Alterar_aluno(lista,item); } if (op == 3){ RetiraAluno(item,lista); } if (op == 4){ cout<<"A media das idades e...\n"; cout<<MediaIdades(lista)<<endl; }
if (op == 5){ Imprime(lista); }
} system("pause"); }
}
void main (){ Elemento item; Tlista lista; FLVazia(lista); string Nome; system ("cls"); system ("color 0B"); menu(item,lista); } | |
|