Classe Fatura. Crie uma classe chamada Fatura que uma loja de ferragens poderia usar para representar uma fatura para um item vendido na loja. Uma Fatura deverá incluir quatro membros — um número de peça (tipo string), uma descrição da peça (tipo string), a quantidade do item sendo comprado (tipo int) e o preço por item (tipo int). Sua classe deverá ter um construtor que inicialize os quatro dados-membros. Forneça uma função set e uma função get para cada dado-membro. Além disso, forneça uma função-membro chamada obterValorFatura que calcule o valor da fatura (ou seja, multiplique a quantidade pelo preço por item), depois retorne o valor como um valor int. Se a quantidade não for positiva, ela deve ser definida como 0. Se o preço por item não for positivo, ele deve ser definido como 0. Escreva um programa de teste que demonstre as capacidades da classe Fatura.
Passo 1
Fala Galera!!! Tudo certo? Espero que sim!! Bora para mais um exercício.
Vamos criar um programa com uma classe chamada fatura que contém os dados-membros e funções-membros utilizadas para armazenar, modificar e exibir a fatura de um item.
Passo 2
Vamos criar a nossa classe responsável por armazenar e modificar os itens. Dentro da classe é usada as funções set e get.
//definição da classe fatura
class Fatura{
public:
//construtor da classe inicializado para os dado-membro
Fatura( string, string, int, int);
//dados-membros
//funções set e get
//numero o item
void setPartNum(string);
string getPartNum();
//descrição
void setPartDes(string);
string getPartDes();
//quuantidade
void setQuant(int);
int getQuant();
//preço unitario
void setUnitPreco(int);
int getUnitPrice();
//fatura toral
int getFaturaTotal();
private:
// numero de peças vendidas
string partNum;
//peças vendidas
string partDes;
// numero da quantidade vendidas
int quant;
//preço unitario de cada peça vendida
int unitePreco;
};
Passo 3
Criada a classe, agora precisamos criar o construtor da classe para inicializar o membros-dados:
//inicialização do constrtutor da class
Fatura::Fatura(string pNum, string pDescricao, int pQuant, int pPreco){
// armazenas os numero
setPartNum(pNum);
//armazena a descrição
setPartDes(pDescricao);
//armazena quantidade
setQuant(pQuant);
//armazena o preço
setUnitPreco(pPreco);
}
//define o numero da peça
void Fatura::setPartNum(string pNum){
partNum = pNum;
}
// retorna numero de peça
string Fatura:: getPartNum(){
return partNum;
}
//define a descrição
void Fatura:: setPartDes(string pDescricao){
partDes = pDescricao;
}
// retorn descrição
string Fatura::getPartDes(){
return partDes;
}
//define quantidade
//e verifica se a quantidade não é negativa
//se for define como quatidade 0
void Fatura::setQuant(int pQuant){
if (pQuant > 0)
quant = pQuant;
if( pQuant
{
quant = 0;
cout
}
}
//retorna quantidade
int Fatura::getQuant(){
return quant;
}
//define preço unitario
//verifica se o preço nao é negativo
//se for define preço como 0
void Fatura:: setUnitPreco(int pPreco){
if( pPreco >0)
unitePreco = pPreco;
if (pPreco
{
unitePreco = 0;
cout
}
}
//retorna o preço
int Fatura:: getUnitPrice(){
return unitePreco;
}
//define a fatura total
int Fatura:: getFaturaTotal(){
return getQuant() * getUnitPrice();
}
Perceba que dentro das funções criadas, são feitas as verificações caso o valor do item ou quantidade seja negativa, ambos receberão a valor 0.
Passo 4
Em seguida vamos precisar chamas as funções criadas dentro da função principal main() e exibir todos os resultados.
int main(){
//objetod da classe criado
Fatura fatura("40", "Alicate", 120, 4);
//mostra todos as informações e chama as funções
cout
cout
cout
cout
cout
//modifica os valores
fatura.setPartNum("102");
fatura.setPartDes("Serra");
fatura.setQuant(-8);
fatura.setUnitPreco(20);
//mostra os valores modificados e chama as funções
cout
cout
cout
cout
cout
cout
system("pause");
return 0;
}
Dentro da função principal foi inserido os valores para quantidade negativa propositalmente, para testar se as condições criadas dentro das funções estão funcionando
Passo 5
Agora vamos analisar a saída do nosso programa e verificar se está tudo certo:

Logo, nosso programa está funcionado perfeitamente.
E assim finalizamos nosso exercício galera. Até o próximo!!!!
Resposta
Programa final:


