/* euro-convertitore sviluppato in OOP

   Programma a cura di Vincenzo Capuano. 
   I diritti sul programma sono riservati all'autore.
   Per informazioni: www.sitoserio.it
*/


#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>

// definizione classe
class conversione  
{
	public:
		conversione(); //costruttore
		~conversione(); //distruttore
		void fattore_conv(float fatt); //funz. di set fattore di conversione
		void calcola(float num); //funzione di calcolo euro/lire 
		void calcola2(float num); //funzione di calcolo lire/euro
		float visual_ris(); //funzione di intefaccia
	private:
		float *p;
};

// implementazione classe
conversione::conversione() 
{
	p = new float [2]; 

	p[0]=0; //fattore di conversione
	p[1]=0; //risultato della conversione
}

conversione::~conversione() 
{
	delete[]p;
}

void conversione::fattore_conv(float fatt)
{
	p[0]=fatt;
}

void conversione::calcola(float num)
{
	p[1] = num / p[0];
}

void conversione::calcola2(float num)
{
	p[1] = num * p[0];
}

float conversione::visual_ris()
{ 
	return p[1];
}

void main()
{
	int scelta, rip;
	float fatt,num;
	conversione A;
	rip=1;
	while(rip)
	{
		cout<<"\n *********** EURO-CONVERTITORE ***********\n";
		cout<<"\n *****************************************";
		cout<<"\n * per la conversione lire/euro digita 1 *";
		cout<<"\n * per la conversione euro/lire digita 2 *";
		cout<<"\n * per un altro tipo di conver. digita 3 *";
		cout<<"\n * per uscire digita 4 *******************";
		cout<<"\n ******************* by VINCENZO CAPUANO *";
		cout<<"\n *****************************************";
		cout<<"\n Fai la tua scelta: ";	cin>>scelta;	
		
		switch(scelta)
		{
			case 1:
				A.fattore_conv(1936.27);
				cout<<"\n Inserisci la cifra da convertire: ";	
				cin>>num;	 	 	 
				A.calcola(num);
				cout<<" Il risultato della conversione e' "<<A.visual_ris()<<endl;
				system("PAUSE");
				
				break;
			case 2:
				A.fattore_conv(1936.27);
				cout<<"\n Inserisci la cifra da convertire: ";	
				cin>>num;	 	 	 
				A.calcola2(num);
				cout<<"\n Il risultato della conversione e' "<<A.visual_ris()<<endl;
				system("PAUSE");
				break;
			case 3:
				cout<<"\n Inserisci il fattore di conversione: ";	 
				cin>>fatt;
				A.fattore_conv(fatt);
				cout<<"\n Inserisci la cifra da convertire: ";	
				cin>>num;
				A.calcola(num);
				cout<<"\n Il risultato della conversione e' "<<A.visual_ris()<<endl;
				system("PAUSE");
				break;
			case 4:
				rip=0;
				cout<<"\n Arrivederci al prossimo utilizzo!";
				break;
			default:
	    			cout<<"\n <Scelta non valida!>";
	    			break;
		}
		cout<<"\n\n\n\n\n";
	}
}
