Ir para conteúdo
Fórum Script Brasil
  • 0

Alguem Poderia Ver Se A Solução Esta Certo?


Guest - rafael -

Pergunta

Guest - rafael -

alguém poderia ver se a solução desse exercicio esta certo???

obrigado

A empresa de telefonia celular tabajara S.A, necessita de um sistema informatizado que apóie o processo gerencial de cobrança no uso do telefone celular por parte de sues clientes. A tabajara s.a trabalha com os tipos de conta telefônica pré-pago e pós-pago. Cada tipo de cobrança tem características diferentes:

Telefone pré-pago: neste plano o cliente não tem conta. Para utilizar ele compra um cartão que habilita o telefone para que seja usado um determinado numero de minutos. São registrados:

• O numero do telefone;

• O valor da conta registrado. O numero de pulsos é calculado pela formula: pulsos = valor *1.25;

• O nome do assinante;

• Um método chamado ler para obterem-se os dados acima (com e sem parâmetros);

• Um método chamado exibir para exibir-se os dados acima;

Telefone pós-pago: neste tipo de conta o cliente paga pelo seu consumo. São registrados:

• O numero do telefone;

• O numero de pulsos que o telefone utilizou;

• O valor de cada pulso;

• O nome do assinante;

• Um método para calcular o valor da conta;

• Um método chamado ler para obterem-se os dados acima (com e sem parâmetros);

• Um método chamado exibir para exibir-se os dados acima;

Aplicando-se os conceitos de herança, sobrecargas de métodos, polimorfismo, funções virtuais classes abstratas e outros que julgar necessário, respeitando-se as características de cada tipo de plano e sabendo-se que novos tipos de contas podem ser futuramente criadas, crie um conjunto de classes que atenda a necessidade da empresa tabajara.

É obrigatória a criação de pelo menos uma classe abstrata. Faça também uma função mail() que leia os dados dos planos de 100 clientes e que calcule e exiba:

• O valor total arrecadados pela empresa

• Os dados do cliente de maior conta paga.

SOLUÇÃO

Void main( ){

CprePago pre;

CposPago pos;

Int i, tipocliente;

Float valtotal1, valtotal2, valtotal3;

Float cliente, mcliente=0;

For (i = 0; 1 < 100 ; i++){

cout << “Digite 1 para cliente pré ou 2 para cliente pos”

cin >> tipocliente;

if (tipocliente = 1){

ler(pre);

pré.ler(97831400, “Jc”, 30);

mostrar (pre);

valtotal1 = valtotal1 + pré.calcular();

}else

{

ler(pos)

pré.pos (97831400, “Jc”, 40, 1,25);

mostrar (pos);

valtotal2 = valtotal2 + pos.calcular();

cliente = pos.calcular( );

If (cliente > mcliente){

Mcliente = mcliente;

}

}

}

cout << mcliente;

valtotal3 = valtotal1 + valtotal2;

cout << valtotal3;

}

class Ctelefonia{

int numtel;

char nome[30];

pulic:

virtual void ler( );

virtual void ler (int CtelefoniaNuntel, char * CtelefoniaNome);

virtual void exibir();

};

class CprePago:public Ctelefonia{

float valcartao;

float pulsos;

public:

void ler( );

void ler( int numtel, char *nome, float Cvalcartao);

float calcular( );

void exibir( );

}

class PosPago:public Ctelefonia{

int numpulso;

float valpulso;

public:

void ler( );

void ler(int numtel, char *nome, int Cnumpulso, float Cvalpulso);

float calcular( );

void exibir( );

}

METODOS LER

void Ctelefonia::ler( ){

cout << “Digite o numero do telefone:”;

cin >> numtel;

cout << “Digite o nome:”;

cin >> nome;

}

void Ctelefonia::ler( int CtelefoniaNumtel, Char *CtelefoniaNome){

numtel = CtelefoniaNumtel;

strcpy (nome, CtelefoniaNome)

}

void PosPago::ler( ){

Ctelefonia::ler( );

Cout << “Digite o numero de pulsos”;

Cin >> numpulso;

Cout << “Digite o valor de cada pulsos”;

Cin >> valpulso;

}

void PosPago::ler(int numtel, char *nome, int Cnumpulso, float Cvalpulso){

Ctelefonia::ler( numtel, nome);

Numpulso = Cnumpulso;

Valpulso = Cvalpulso;

}

void PrePago::ler( ){

Ctelefonia::ler( );

Cout << “Digite o valor do cartão”;

Cin >> valcartao;

}

void PrePago::ler(int numtel, char *nome, float Cvalcartao){

Ctelefonia::ler( numtel, nome);

Valcartao = Cvalcartao;

}

METODOS EXIBIR

void Ctelefonia::exibir( ){

cout << “ numer do tel”;

cout << numtel;

cout << “Nome”;

cout << nome;

}

void CprePago::exibir( ){

Ctelefonia::exibir( );

cout << valcartao;

cout << calcular( );

}

void CposPago::exibir( ){

Ctelefonia::exibir( );

cout << numpulso;

cout << valpulso;

cout << “valorconta”;

cout << calcular( );

}

METODOS CALCULAR

void CprePago::calcular( ){

return valcartao * 1,25;

}

void CposPago::calcular( ){

return numpulsos * valpulso;

}

void ler (Ctelefonia &x);

void mostrar (Ctelefonia &x);

void ler (Ctelefonia &x){

x.ler( );

}

void mostrar (Ctelefonia &x){

x.exibir( );

}

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Só de olhar a primeira parte, passando o olho, já posso apontar os seguintes erros:

Você não pode usar cout << ou cin >> sem declarar o arquivo iostream

Você, em C++ ( veja que seu código é C++ - possui classes e mais ), não pode declarar a função main como void, apenas int.

E... você fez esse código? huh.gif

Você tinha dúvida e do meio do nada tira da manga um código com classes, herança, e muito mais! (Fora que alguém que sabe isso tudo NUNCA - tá, raramente - comete erros como declarar função main como void).

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...