[RESOLVIDO] O que tem de errado nesse programa?
2 participantes
Página 1 de 1
[RESOLVIDO] O que tem de errado nesse programa?
- Código:
#include <iostream>
using namespace std;
int main(void)
{
int I, OPC = 1, PESQNU;
bool ACHA;
char PESQNO[32];
struct CAD_INFO
{
char NOME[32];
long int NUMERO;
};
struct CAD_INFO CAD[20];
int OPCAO = 0;
while(OPCAO <= 5)
{
cout << "\nAgenda Eletronica\n";
cout << "-----------------\n";
cout << endl << endl;
cout << "[1] Cadastrar Informacoes" << endl;
cout << "[2] Mostrar Todos Cadastros" << endl;
cout << "[3] Pesquisar por Nome" << endl;
cout << "[4] Pesquisar por Numero" << endl;
cout << "[5] Alterar um Cadastro" << endl;
cout << "[6] Fechar Agenda" << endl << endl;
cout << "O Que Deseja Fazer?.....: "; cin >> OPCAO;
}
if(OPCAO <= 5)
{
switch (OPCAO)
{
case 1:
I = 0;
OPC = 1;
while(OPC == 1)
{
cout << "Entre com o Nome";
cin >> CAD[1].NOME;
I++;
cout << "Deseja continuar?" << "[1]Sim [2]Nao" << endl;
cin >> OPC;
}
break;
case 2:
for(I = 0; I <= 19; I++)
{
cout << CAD[I].NOME << CAD[I].NUMERO << endl;
}
break;
case 3:
I = 0;
cout << "Digite o nome a ser Pesquisado.....: ";
cin >> PESQNO;
ACHA = false;
while(ACHA == false && I <= 19)
{
if(PESQNO == CAD[I].NOME)
{
ACHA = true;
}
else
I++;
}
break;
case 4:
I = 0;
cout << "Digite o numero a ser Pesquisado.....: ";
cin >> PESQNU;
ACHA = false;
while(ACHA == false && I <= 19)
{
if(PESQNU == CAD[I].NUMERO)
{
ACHA = true;
}
else
I++;
}
break;
case 5:
I = 0;
cout << "Numero do Registro.....: ";
cin >> I;
cout << "Digite o Nome...: ";
cin >> CAD[I].NOME;
cout << "Digite o Numero.: ";
cin >> CAD[I].NUMERO;
break;
}
}
return 0;
}
O programa é uma agenda eletrônica que é possivel cadastrar 20 nomes e telefones, pesquisar qualquer um deles por nome ou por numero de telefone, alterar qualquer nome ou telefone registrado.
Eu consigo compilar o programa sem nenhum erro ou warning, ou seja, ta liso...
Mas eu executo e ele abre e vai pro menu, dai eu escolho qualquer opção, mas ele não fez o que era pra fazer...
A única opção que funciona é a opção Fechar Agenda, que obviamente, fecha o programa!!!
Taaa, e ai??
Descobriram o meu erro????
Ajudem aee
edoo, se q é feraa
Última edição por Perdigão em Dom 10 Jul 2011 - 20:51, editado 1 vez(es)
Perdigão- Silver Member
- Mensagens : 249
Posts : 5214
Agradecimentos : 9
Data de inscrição : 16/06/2011
Re: [RESOLVIDO] O que tem de errado nesse programa?
se não da erro de sintaxe
e nao da erro de nada na hora de compilar
provavelmente deve ser erro na source.
vc pegou a source pronta?
e nao da erro de nada na hora de compilar
provavelmente deve ser erro na source.
vc pegou a source pronta?
IsLifersBozo?- Silver Member
- Mensagens : 219
Posts : 9688
Agradecimentos : 6
Data de inscrição : 02/06/2011
Idade : 29
Re: [RESOLVIDO] O que tem de errado nesse programa?
edoo, tarde de mais mano kkkk
ja arrumei todos os erros, e adc uma função pra cadastrar endereço da pessoa tbm...
ahhh, e eu mesmo fiz essa base, desde o começo até o fim.
Nao to no meu pc agora, mas quando eu tiver nele, eu posto a source com erros corrigidos...
só que o comando cin.getline nao pego uaiiii....
tive que usar "cin >>" mesmo.O ruim é que esse comando só aceita a palavra até o primeiro [SPACE], e cin.getline, aceita até lotar a variavel, mesmo que tenha muitos [Espaços].
faloww
ja arrumei todos os erros, e adc uma função pra cadastrar endereço da pessoa tbm...
ahhh, e eu mesmo fiz essa base, desde o começo até o fim.
Nao to no meu pc agora, mas quando eu tiver nele, eu posto a source com erros corrigidos...
só que o comando cin.getline nao pego uaiiii....
tive que usar "cin >>" mesmo.O ruim é que esse comando só aceita a palavra até o primeiro [SPACE], e cin.getline, aceita até lotar a variavel, mesmo que tenha muitos [Espaços].
faloww
Perdigão- Silver Member
- Mensagens : 249
Posts : 5214
Agradecimentos : 9
Data de inscrição : 16/06/2011
Re: [RESOLVIDO] O que tem de errado nesse programa?
A Source Correta para quem quser estudar, é esta:
É uma Agenda Eletrônica, que permite cadastrar até 20 Contatos, cada um com Nome, Telefeon e Endereço.
Permite Mostrar todos Cadastrados, Editar qualquer contato que esteja errado.
Permite pesquisar um Contato por Nome ou Numero.
Obs: Usei Programação Orientada a Objeto para fazer essa source.
Então é isso pessoal! Falow
- Código:
// Exercício A
#include <iostream>
#include <cstring>
using namespace std;
class CAD_INFO
{
public:
char NOME[32];
char END[32];
long int NUMERO;
};CAD_INFO CAD[20];
int main(void)
{
int I, J, OPC = 1, PESQNU, X = 0;
bool ACHA;
char PESQNO[32], A[32];
for(I = 0; I <= 19; I++)
{
CAD[I].NUMERO = 0;
}
int OPCAO = 0;
while(OPCAO <= 5)
{
cout << "\nAgenda Eletronica\n";
cout << "-----------------\n";
cout << endl << endl;
cout << "[1] Cadastrar Informacoes" << endl;
cout << "[2] Mostrar Todos Cadastros" << endl;
cout << "[3] Pesquisar por Nome" << endl;
cout << "[4] Pesquisar por Numero" << endl;
cout << "[5] Alterar um Cadastro" << endl;
cout << "[6] Fechar Agenda" << endl << endl;
cout << "O Que Deseja Fazer?.....: "; cin >> OPCAO;
cout << endl << endl;
if(OPCAO <= 5)
{
switch (OPCAO)
{
case 1:
OPC = 1;
while(OPC == 1)
{
cout << "USE _ (underline) AO INVES DE ESPACOS";
cout << endl;
cout << "Entre com o Nome.....: ";
cin >> CAD[X].NOME;
cout << "Entre com o Numero...: ";
cin >> CAD[X].NUMERO;
cout << "Entre com Endereco...: ";
cin >> CAD[X].END;
X++;
cout << "Deseja cadastrar mais um?" << "[1]Sim [2]Nao" << endl;
cin >> OPC;
}
break;
case 2:
for(J = 0; J <= 18; J++)
{
for(I = J + 1; I <= 19; I++)
{
if(strcmp(CAD[J].NOME, CAD[I].NOME) >= 0)
{
strcpy(A, CAD[J].NOME);
strcpy(CAD[J].NOME, CAD[I].NOME);
strcpy(CAD[I].NOME, A);
}
}
}
for(I = 0; I <= 19; I++)
{
cout << "Nome: "<< CAD[I].NOME << endl;
cout << "Numero: " << CAD[I].NUMERO << endl;
cout << "Endereco: " << CAD[I].END << endl << endl;
}
break;
case 3:
I = 0;
cout << "Digite o nome a ser Pesquisado.....: ";
cin >> PESQNO;
ACHA = false;
while(ACHA == false && I <= 19)
{
if(strcmp(PESQNO, CAD[I].NOME) == 0)
{
ACHA = true;
}
else
I++;
}
if(ACHA == true)
cout << CAD[I].NUMERO;
else
cout << "Nao Encontrado...";
cout << endl;
break;
case 4:
I = 0;
cout << "Digite o numero a ser Pesquisado.....: ";
cin >> PESQNU;
ACHA = false;
while(ACHA == false && I <= 19)
{
if(PESQNU == CAD[I].NUMERO)
{
ACHA = true;
}
else
I++;
}
break;
case 5:
I = 0;
J = I - 1;
cout << "Numero do Registro.....: ";
cin >> I;
cout << "Digite o Nome......: ";
cin >> CAD[J].NOME;
cout << "Digite o Numero....: ";
cin >> CAD[J].NUMERO;
cout << "Digite o Endereco..: ";
cin.getline(CAD[X].END, sizeof(CAD[X].END));
break;
}
}
}
return 0;
}
É uma Agenda Eletrônica, que permite cadastrar até 20 Contatos, cada um com Nome, Telefeon e Endereço.
Permite Mostrar todos Cadastrados, Editar qualquer contato que esteja errado.
Permite pesquisar um Contato por Nome ou Numero.
Obs: Usei Programação Orientada a Objeto para fazer essa source.
Então é isso pessoal! Falow
Perdigão- Silver Member
- Mensagens : 249
Posts : 5214
Agradecimentos : 9
Data de inscrição : 16/06/2011
Tópicos semelhantes
» cOLOKANDO VIDEO errado
» [Programa] Positive Cleaner
» Como Roubar Sets e Armas Sem Nenhum Programa
» [RESOLVIDO] Exercício C++
» [Programa] Positive Cleaner
» Como Roubar Sets e Armas Sem Nenhum Programa
» [RESOLVIDO] Exercício C++
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|