Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

slackneo

Trabalho de escola

Recommended Posts

Olá pessoal,

 

Seguinte, estou fazendo um sistema de venda de automóveis, onde tenho de cadastrar os automóveis e depois registrar vendas, até aí tudo bem.

 

Só que preciso emitir um relatório do total de vendas de um determinado dia (por data). Conforme segue o código abaixo:

 

 

CLASSES VEICULO E VENDAS

 

class Veiculo {

public:

int cod_vei;

char mar_vei[100];

char mod_vei[100];

int ano_vei;

float pre_vei;

char cor_vei[100];

char pla_vei[100];

 

///////////////////////////////////////////////////////////////

//método cadastra veiculo

void cadVeiculo() {

int i=1;

system("cls");

cout<< "# CADASTRO DE VEICULO"<<endl<<endl;

cout<< "Codigo: ";

cin>> cod_vei;

cout<< "Marca: ";

cin>>mar_vei;

cout<< "Modelo: ";

cin>> mod_vei;

cout<< "Ano: ";

cin>> ano_vei;

cout<< "Valor R$: ";

cin>> pre_vei;

cout<< "Cor: ";

cin>> cor_vei;

cout<< "Placa: ";

cin>> pla_vei;

}

};

 

class Vendas {

public:

int cod_venda;

int cod_vei;

int cod_ven;

int cod_cli;

int qua_venda;

char dat_venda[100];

 

///////////////////////////////////////////////////////////////

//método registra venda

void cadVenda () {

cout<< "Codigo Venda: ";

cin>> cod_venda;

cout<< "Codigo Veiculo: ";

cin>> cod_vei;

cout<< "Codigo Vendedor: ";

cin>> cod_ven;

cout<< "Codigo Cliente: ";

cin>> cod_cli;

cout<< "Quantidade Veiculo: ";

cin>> qua_venda;

cout<< "Data Venda: ";

cin>> dat_venda;

}

};

 

PARTE DO MAIN

 

main() {

Veiculo v[100];

Vendas vend[100];

 

int contVei=0,contVend=0; //Controla quantidade cadastrada

 

int i;

float tot_dia,total;

char consVenda[100];

 

cout<< "# TOTAL DE VENDAS POR DATA"<<endl<<endl;

cout<< "Data: ";

cin>> consVenda;

system("cls");

 

cout<< "# RELATORIO VENDAS POR DATA"<<endl<<endl;

for (i=0; i < contVend; i++) {

if (strcmp(consVenda, vend.dat_venda) == 0) {

if (v.cod_vei == vend.cod_vei) {

tot_dia = (vend.qua_venda * v.pre_vei);getchar();

total = total + tot_dia;

}

}

}

 

cout<< "Data: "<<consVenda<<endl;

cout<< "Valor Total: R$ "<< total;

 

getchar(); getchar();

}

}

Então, tenho de cadastrar um veículo e registrar vendas, na hora de emitir o relatório tenho de multiplicar a quantidade vendida pelo valor do veículo referente a venda, e se tiver mais de uma venda no mesmo dia repetir o procedimento e somar tudo.

 

tot_dia = (vend.qua_venda * v.pre_vei);getchar();

Nessa parte do código quando realizo somente uma venda, tudo ocorre bem. Porém quando existe mais de uma venda no mesmo dia, os valores aparecem errados.

 

Gostaria que pudessem me ajudar a achar onde está o erro ou algum meio melhor para fazer isso.

 

Agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom,

Consegui resolver o erro, e vou postá-lo.

 

Essa parte do código está com erro.

 

cout<< "# RELATORIO VENDAS POR DATA"<<endl<<endl;

for (i=0; i < contVend; i++) {

if (strcmp(consVenda, vend.dat_venda) == 0) {

if (v.cod_vei == vend.cod_vei) {

tot_dia = (vend.qua_venda * v.pre_vei);getchar();

total = total + tot_dia;

}

}

}

 

Aqui o código certo.

 

int i,j;

cout<< "# RELATORIO VENDAS POR DATA"<<endl<<endl;

for (i=0; i < contVend; i++) {

if (strcmp(consVenda, vend.dat_venda) == 0) {

for (j=0; j < contVei; j++) {

if (v[j].cod_vei == vend.cod_vei) {

tot_dia = (vend.qua_venda * v[j].pre_vei);getchar();

total = total + tot_dia;

}

}

}

 

Precisava de mais um for para percorrer o vetor v[];

 

É isso aí pessoal,

Obrigado a todos que leram mesmo não postando alguma dica.

 

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.