// File: portamonete.cpp
//
// Definizione dei metodi della classe Portamonete

#include <iostream>
#include "portamonete.h"

using namespace std;

void Portamonete::inserisci(double valore) {
    inserisci(valore, 1); // Invoca lo stesso metodo con due parametri
}

void Portamonete::inserisci(double valore, int n) {
    if (valore == 0.50)
        num_monete_50cent += n;
    else if (valore == 0.50)
        num_monete_50cent += n;
    else if (valore == 1.00)
        num_monete_1euro += n;
    else if (valore == 2.00)
        num_monete_2euro += n;
    else
        cerr << "Valore non valido" << endl;
}

double Portamonete::denaro() {
    return num_monete_50cent * 0.50 + num_monete_1euro * 1.00 + num_monete_2euro * 2.00;
}

void Portamonete::denaropertipo() {
    cout << "Monete da 50 cent: " << num_monete_50cent << endl;
    cout << "Monete da 1 euro: " << num_monete_1euro << endl;
    cout << "Monete da 2 euro: " << num_monete_2euro << endl;
}

Portamonete::Portamonete() :
    num_monete_50cent(0), num_monete_1euro(0), num_monete_2euro(0) {}

Portamonete::Portamonete(int num_50cent, int num_1euro, int num_2euro) :
    num_monete_50cent(num_50cent), num_monete_1euro(num_1euro), num_monete_2euro(num_2euro) {}