MAIN
codice:
#include "Prodotti.h"
#include "ProdottiAlimentari.h"
#include "ProdottiNonAlimentari.h"
#include "Date.h"
#include "ListaSpesa.h"
/* time example */
#include <stdio.h> /* printf */
#include <time.h>
#include <iostream>
using namespace std;
using std::string;
int main(int argc, char **argv) {
Date data_1(23, 3, 2015);
Prodotti lista[2];
ProdottiNonAlimentari sapone(34545, "Sapone", 12.24, "cacca");
ProdottiNonAlimentari sapone2(34545, "Sapone2", 100, "vetro");
ProdottiAlimentari brioches(34545, "Biroches", 100, data_1);
cout << sapone.getDescrizione() << " -> " << sapone.getPrezzo() << " euro" << endl;
cout << brioches.getDescrizione() << " -> " << brioches.getPrezzo() << " euro" << endl;
lista[1] = brioches;
lista[0] = sapone2;
cout << lista[0].applicaSconto() << endl;
cout << lista[1].applicaSconto();
// ListaSpesa spesa(lista, false);
//cout << spesa.calcolaTot();
return 0;
}
PRODOTTI
codice:
#include "Prodotti.h"
using namespace std;
using std::string;
Prodotti::Prodotti(long _codice_a_barre, string _descrizione, float _prezzo)
{
codice_a_barre = _codice_a_barre;
descrizione = _descrizione;
prezzo = _prezzo;
}
Prodotti::Prodotti(){
}
....
float Prodotti::applicaSconto(){
prezzo = prezzo - (prezzo/20);
return prezzo;
}
PRODOTTI ALIMENTARE (concettualmente NonAlimentari è identico)
codice:
#include "ProdottiAlimentari.h"#include "Date.h"
using namespace std;
using std::string;
ProdottiAlimentari::ProdottiAlimentari(long _codice_a_barre, string _descrizione, float _prezzo, Date _scadenza):Prodotti(_codice_a_barre, _descrizione, _prezzo)
{
codice_a_barre = _codice_a_barre;
descrizione = _descrizione;
prezzo = _prezzo;
scadenza = _scadenza;
}
bool ProdottiAlimentari::GetScaduto(){
return scadenza.getScaduto();
}
float ProdottiAlimentari::applicaSconto(){
prezzo = prezzo - ((prezzo*20)/100);
return prezzo;
}
PRODOTTI ALIMENTARI .H
codice:
class ProdottiAlimentari: public Prodotti{
public:
ProdottiAlimentari(long _codice_a_barre, string _descrizione, float _prezzo, Date _scadenza);
bool GetScaduto();
float applicaSconto();
protected:
int giorno;
int mese;
int anno;
float prezzo;
Date scadenza;
bool scaduto;
};