Logo Hardware.com.br
posay21
posay21 Novo Membro Registrado
1 Mensagem 0 Curtidas

Orrdenação C++

#1 Por posay21 14/04/2014 - 23:05
Galera boa noite!!!


Preciso de ajuda para ordenar alfabeticamente por nome o meu trabalho
quem puder me ajudar agradeço muito.


#include
#include

using namespace std;

struct cadastro // Declaração de variaveis de tipos diferentes//
{
string nome, estadoCivil, grauInstrucao;
char sexo;
int idade;
float salario;
};

char menu() //menu de interação//
{
char opcao;
system("cls"); // limpa o cache moantendo o menu estatico //
cout << "1 - Cadastrar" << endl;
cout << "2 - Alterar Dados" << endl;
cout << "3 - Consultar" << endl;
cout << "4 - Listar" << endl;
cout << "5 - Finalizar" << endl;
cout << "Opcao: ";
cin >> opcao;
return opcao;
}

char lista_cheia(int total, int tam_max)
{
if (total == tam_max)
return 'S';
else
return 'N';
}

char lista_vazia(int total)
{
if (total == 0)
return 'S';
else
return 'N';
}

char verificaDuplicidade(cadastro a[], int total, int tam_max, string nome) // na pesquisa faz validação se ja existe um registro cadastrado evitando a duplicidade dos dados//
{
int i;
char achou = 'N';
for (i = 0; i < total; i++)
if (a[i].nome == nome)
{
return 'S';
}
}

void incluir(cadastro a[], int & total, int tam_max, string nome) // na pesquisa faz validação se ja existe um registro cadastrado evitando a duplicidade dos dados//
{
if (verificaDuplicidade (a, total, tam_max, nome) == 'S') {
cout << "Nome Já Cadastrado!!!" << endl;
system("pause");
return;
}
if (lista_cheia(total, tam_max) == 'N')
{
a[total].nome = nome;

cout << "Sexo: F - Feminimo ou M - Masculino"; // cadastro das informações solicitadas no menu//
cin >> a[total].sexo;
cout << "Idade: ";
cin >> a[total].idade;
cout << "Salario: ";
cin >> a[total].salario;
cout << "Estado Civil: ";
cin >> a[total].estadoCivil;
cout << "Grau de Instrução: ";
cin >> a[total].grauInstrucao;
total ++;
cout << "Cadastro Efetuado com Sucesso!!!" << endl;

}
else
cout << "Lista Cheia" << endl;
system("pause");
}

void alterar(cadastro a[], int total, string nome) // No caso de alteração dos dados segue o menu paras alteração dos dados cadastrais//
{
int i;
char achou = 'N';

if (lista_vazia(total) == 'N')
{
for (i = 0; i < total; i++)
if (a[i].nome == nome)
{
cout << "Nome: ";
cin >> a[i].nome;
cout << "Sexo: F - Feminimo ou M - Masculino ";
cin >> a[i].sexo;
cout << "Idade: ";
cin >> a[i].idade;
cout << "Salario: ";
cin >> a[i].salario;
cout << "Estado Civil: ";
cin >> a[i].estadoCivil;
cout << "Grau de Instrução: ";
cin >> a[i].grauInstrucao;
achou = 'S';
cout << "Alterado com sucesso. ";

}
if (achou == 'N')
cout << "Nao encontrado" << endl;
}
else
cout << "Nenhum cadastro foi efetuado ate o momento..." << endl; //caso na alteração foi verificado que ainda não existe um cadastrto exibe a mensagem Nenhum cadastro foi efetuado ate o momento...//
system("pause");
}

void exibir(cadastro a[], int total, string nome) // aqui exibe os dados ja armazenados nos vetores em tabulação //
{
int i;

if (lista_vazia(total) == 'N')
{
for (i = 0; i < total; i++)
if (a[i].nome == nome){
cout << "Nome: " << a[i].nome << " Sexo: " << a[i].sexo << " Idade: " << a[i].idade << " Salario: " << a[i].salario << " Estado Civil: " << a[i].estadoCivil << " Grau de Instrução: " << a[i].grauInstrucao << endl;
}else{
cout << "Usuario não encontrado!!!" << endl;
}
}
else
cout << "Nenhum Cadastro efetuado ate o momento!!!" << endl;
system("pause");
}

void listar(cadastro a[], int total) // aqui lista todos os dados ja cadastrdos//
{
int i;
float media;

if (lista_vazia(total) == 'N')
{
for (i = 0; i < total; i++)
{
cout << a[i].nome << " Sexo: " << a[i].sexo << " Idade: " << a[i].idade << " Salario: " << a[i].salario << " Estado Civil: " << a[i].estadoCivil << " Grau de Instrução: " << a[i].grauInstrucao << endl;
}

}
else
cout << "Nenhum Cadastro efetuado ate o momento!!!" << endl;
system("pause");
}


int main()
{
cadastro a[5];
string nome;
int total, tam_max = 5;
char opcao;

total = 0;

opcao = menu();
while (opcao != '5')
{
if (opcao == '1')
{
cout << "Nome: ";
cin >> nome;
incluir(a, total, tam_max, nome);
}
else
if (opcao == '2')
{
cout << "Nome";
cin >> nome;
alterar(a, total, nome);
}
else
if (opcao == '3')
{
cout << "Nome";
cin >> nome;
exibir(a, total, nome);
}
else
if (opcao == '4')
listar(a, total);
opcao = menu();
}
return 0;
}
© 1999-2025 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal