Logo Hardware.com.br
dere07
dere07 Membro Senior Registrado
191 Mensagens 1 Curtida

programa compila, mas trava na execução

#1 Por dere07 04/12/2012 - 01:40
pessoal estou fazendo um programa para check-in de aeroporto, ele efetua compra e ler o historico, isso é um trabalho da faculdade, gostaria de saber pq ele trava quando eu chamo um metodo da classe.

#include
#include
using namespace std;
class Passageiro{
private:
char* nome;
char* endereco;
char* cpf;


public:
Passageiro(){} // construtor padrão

Passageiro(char* a, char* b, char*c, int d, int e){ //construtor

nome = a;
endereco = b;
cpf = c; }

void set_nome(char* a){ //modificador
nome = a; }

void set_endereco(char* b){ //modificador
endereco = b; }
void set_cpf(char* c){//modificador
cpf = c;}
char* get_nome(){
return nome;}

char* get_endereco(){
return endereco;}
char* get_cpf(){
return cpf;}
};
class Passageiro_esp : Passageiro{
private:
int milha;
Passageiro_esp(){};
Passageiro_esp(int a){
milha = a;}
void set_milha(int a){
milha = a;}
int get_milha(){
return milha;}
void add_milha(){
milha = milha + 1000;}


};


class Voo{
private:
char* co;
char* cd;
char* data;
char* hora;
int status;

/* 1- agendado
2- reservado
3- cancelado
4- realizado*/
public:
Voo(){}
Voo(int a, char* b, char* c, char* d){
status = a;
co = b;
cd = c;
data = d; }
void set_hora(char* a){
hora = a;}
void set_data(char* a){
data = a;}
void set_co(char* a){
co = a;}
void set_cd(char* a){
cd = a;}
void set_status(int a){
status = a;}
char* get_co(){
return co;}
char* get_cd(){
return cd;}
char* get_data(){
return data;}
char* get_hora(){
return hora;}

void ler_voo(){
cout<<"dia/mes/ano:"< cout< cout<<"status do voo: "< cout<<"1- agendado"< cout<<"2- reservado"< cout<<"3- cancelado"< cout<<"4- realizado"< cout< cout< }
void fazer_check(){
status = 4;

cout<<"check-in com sucesso"<
void compra(){
status = 2; }

};

class Lista_voo{
private:
Voo lista[5];
int i;
public:
Lista_voo(){}; // costrutor padrão

void set_i(int a){
i=a; }
void set_lista(int a, Voo b){
lista[a] = b; }

void add(Voo obj){ // passar os voos para o vetor
lista[i] = obj;

}
void comprar_voo(){
char*from;
char* to;
cout<<"digite a cidade de origem"< cin>>from;

cout<<"digite a cidade de destino"< cin>>to;
for(int j=0;j<5;j++)
if(lista[j].get_co() == from && lista[j].get_cd()== to){
lista[j];
cout << "compra efetuada";
lista[j].compra();
break;
}
cout << "Nao encontrado";
}
void check(){
char* d;
cout<<"digite a data"< cin>>d;
for(i=0;i<=5;i++){
if(lista[i].get_data() == d){
lista[i].fazer_check();}
break;}
}
void ler(){
for(i=1;i<=5;i++){
lista[i].ler_voo();}}

};


int main(int argc, char *argv[])
{
int aux;
int i;
char* acpf;
Passageiro cli[4];
cli[1].set_nome("fulano");
cli[1].set_cpf("1243");
cli[1].set_endereco("rua a");
cout<

cli[2].set_nome("sicrano");
cli[2].set_cpf("1234");
cli[2].set_endereco("rua c");
cout<
cli[3].set_nome("ana");
cli[3].set_cpf("4321");
cli[3].set_endereco("rua t");
cout<

Voo obj1;
obj1.set_cd("for");
obj1.set_co("MCO");
obj1.set_data("03/12/2012");
obj1.set_hora("21:30");
obj1.set_status(3);
cout< Voo obj2;
obj2.set_cd("sp");
obj2.set_co("for");
obj2.set_data("04/12/2012");
obj2.set_hora("20:30");
obj2.set_status(1);

Voo obj3;
obj3.set_cd("flo");
obj3.set_co("for");
obj3.set_data("05/12/2012");
obj3.set_hora("04:30");
obj3.set_status(1);
Voo obj4;
obj4.set_cd("JoaoPessoa");
obj4.set_co("Salvador");
obj4.set_data("15/12/2012");
obj4.set_hora("12:0");
obj4.set_status(2);
Voo obj5;
obj5.set_cd("natal");
obj5.set_co("recife");
obj5.set_data("25/10/2012");
obj5.set_hora("15:30");
obj5.set_status(1);

Lista_voo vo;
vo.set_i(1);
vo.add(obj1);
vo.set_i(2);
vo.add(obj2);
vo.set_i(3);
vo.add(obj3);
vo.set_i(4);
vo.add(obj4);
vo.set_i(5);
vo.add(obj5);

cout<<"deseja fazer 1-check-in 2-comprar 3- historico"< cin>>aux;
switch(aux){

case 1:
cout<<"digite o cpf"< cin>>acpf;//===============================
for(i=1;i<=3;i++){
if(acpf == cli[i].get_cpf()){ //==============
vo.check();}//metodo para fazer check-in
}//==================================
break;

case 2:
vo.comprar_voo(); // metodo para comprar voo
break;
case 3:
vo.ler(); //historico
break;
}

system("PAUSE");

return EXIT_SUCCESS;
}

o problema é na main, ou nos metodos?
A6_INFO
A6_INFO Cyber Highlander Administrador
56K Mensagens 4K Curtidas
#2 Por A6_INFO
04/12/2012 - 08:03
Movido de Programas para Programação.
Progressista gourmet, esquerda caviar, querem o controle e atacar as liberdades, ignoram opinião alheia e se fazem de vítimas quando confrontados. ©®²³
Com uma besta quadrada comunista (Paulo Freire), patrono da educação, criamos apenas militantes socialistas, bestas quadradas e analfabetos funcionais.
Quem votou no Ladrão, candidato da criminalidade e do establishment (que vibraram com sua vitória), é ladrão, cúmplice ou apenas um imbecil.
Delphing
Delphing Geek Registrado
2.1K Mensagens 96 Curtidas
#3 Por Delphing
04/12/2012 - 09:28
Olá dere07

A questão de travar é muito subjetiva, tu poderia informar mais detalhes de qual a mensagem de erro está sendo exibido (Se é exibida alguma), informar também
a linguagem em que está desenvolvendo e o compilador que está usando ajudam bastante a te ajudar.
O código tu deve postar dentro das tags code, para não perder formatação...

No mais em que ponto do programa ele está parando?
Qual o provável problema, você já verificou isso? Pergunto isso pois se tu imagina o que pode estar acontecendo de errado e onde está acontecendo, é melhor
informar para poder dar uma auda mais precisa.

abraço
http://www.dotclass.com.br
punk.gif

"Se correr o bicho pega se ficar o bicho come mas se unir o bicho foge."
Mário Sérgio Cortella
http://www.youtube.com/watch?v=IQ9MkP7XWcA

"Para conquistar o que deseja, precisa ser quem é! Do contrário o desejo não é teu a conquista não é tua." by Eu legal.png
dere07
dere07 Membro Senior Registrado
191 Mensagens 1 Curtida
#4 Por dere07
08/12/2012 - 23:13
Delphing disse:
Olá dere07


No mais em que ponto do programa ele está parando?
Qual o provável problema, você já verificou isso? Pergunto isso pois se tu imagina o que pode estar acontecendo de errado e onde está acontecendo, é melhor
informar para poder dar uma auda mais precisa.

abraço


acontece, que na hora que eu coloco para executar um metodo ele trava, quando é escolhido no casa, ele para de funcionar, "aparece uma tela de erro, o programa parou de fucionar". aproveitando o post, vc pode dar algum exemplo de herança de metodos?
Grato!
acredite sempre que dará certobom_trabalho.gif
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal