Programa sencillo con plantillas
Características: Es la creación de un programa sencillo con el uso de las Plantillas para poder utilizar una misma función con distintos tipos dedatos, pero ahora incluyendo racionales.
*/
#include <iostream>
using namespace std;
//Fin librerias
class Racional
{
friend ostream & operator<<(ostream &Salida, const Racional & R);
friend istream & operator>>(istream & Entrada, Racional & R);
private:
int Num;
intDen;
//Declaracion de variables
public:
Racional(intnum=0,intden=1);//Constructor
bool ValidarDen(int den);
bool operator >(constRacional &R2)const;
~Racional(void);//Destructor
};
Racional::Racional(intnum,intden):Num(num)
{
bool Bandera;
//Declaracion de variables
do
{Bandera=ValidarDen(den);
if(Bandera==false)
{
cout<<"Ingresa otro denominador, indeterminas la fraccion: "<<endl;
cin>>den;
}}while(Bandera==false);//Aqui se va a guardar el denominador hasta que no indeterminada
Den=den;
}//Fin del Constructor
bool Racional::ValidarDen(int den)
{bool Bandera=false;
if(den != 0)
{
Bandera=true; //Aquí se le va asignar true al denominador sí es distinto de cero
}
return Bandera;}//Fin ValidarDen
bool Racional :: operator >(const Racional &R2)const
{
bool Bandera = false;
double RA=(Num * R2.Den /(Den * R2.Num));
double RB=(R2.Num * Den /(R2.Den *Num));
if(RA > RB)
{
Bandera=true;
}
return Bandera;
}//Fin operator >
Racional::~Racional(void)
{
}//Fin del Destructor
//Fin de la clase Racional...
Regístrate para leer el documento completo.