Referencia de la Clase <template>rational< INT >

La clase rational implementa las operaciones aritm�ticas principales para n�meros rationales. Más...

#include <rational.h>

Lista de todos los miembros.

Métodos públicos

 rational ()
 Constructor de vector.
 rational (INT num)
 Constructor a partir de un valor entero.
 rational (INT num, INT den)
 Constructor a partir de un valor quedbrado.
 rational (const rational &o)
 Constructor de copia.
 ~rational ()
 Destructor.
void set (INT num=0, INT den=1)
 Cambia el valor del n�mero rational a "n/d".
INT num () const
 Copia del numerador.
INT den () const
 Copia del denominador.
rationaloperator= (const rational &)
 Copia desde "o".
rationaloperator= (INT)
 Asignaci�n desde un "INT".
rationalswap (rational &)
 Intercambia los valores de "*this" y "o".
rationaloperator+= (const rational &)
 Le suma a "*this" el valor de "otro".
rationaloperator-= (const rational &)
 Le resta a "*this" el valor de "otro".
rationaloperator *= (const rational &)
 Multiplica "*this" por "num".
rationaloperator/= (const rational &)
 Divide "*this" por el valor de "num".
rational operator- () const
 "-x".
rationalfromString (const char *nStr)
 Establece el varlor de "*this" a partir de la hilera "nStr".

Métodos privados

void Simplify ()
 Simplifica el numerador y el denomidador.

Atributos privados

INT m_num
 Numerador.
INT m_den
 Denominador.

Amigas

template<class T>
rational< T > operator+ (const rational< T > &, const rational< T > &)
template<class T>
rational< T > operator- (const rational< T > &, const rational< T > &)
template<class T>
rational< T > operator * (const rational< T > &, const rational< T > &)
template<class T>
rational< T > operator/ (const rational< T > &, const rational< T > &)
template<class T>
bool operator== (const rational< T > &, const rational< T > &)
template<class T>
bool operator< (const rational< T > &, const rational< T > &)
template<class T>
bool operator!= (const rational< T > &, const rational< T > &)
template<class T>
bool operator<= (const rational< T > &, const rational< T > &)
template<class T>
bool operator>= (const rational< T > &, const rational< T > &)
template<class T>
bool operator> (const rational< T > &, const rational< T > &)
template<class T>
ostream & operator<< (ostream &, const rational &)
 Graba el valor de "r" en el flujo "COUT".
template<class T>
istream & operator>> (istream &, rational &)
 Lee del flujo de texto "CIN" el valor de "r".
template<class T>
double real (const rational &)
 Convertidor a punto flotante.
template<class T>
INT integer (const rational &)
 Convertidor a punto fijo.
template<class T>
bool check_ok (const rational &r)
 Verifica la invariante de la clase rational.


Descripción detallada

template<class INT>
class rational< INT >

La clase rational implementa las operaciones aritm�ticas principales para n�meros rationales.

Definición en la línea 31 del archivo rational.h.


Documentación del constructor y destructor

template<class INT>
rational< INT >::rational (  )  [inline]

Constructor de vector.

Definición en la línea 40 del archivo rational.h.

template<class INT>
rational< INT >::rational ( INT  num  )  [inline]

Constructor a partir de un valor entero.

Definición en la línea 41 del archivo rational.h.

template<class INT>
rational< INT >::rational ( INT  num,
INT  den 
) [inline]

Constructor a partir de un valor quedbrado.

Definición en la línea 42 del archivo rational.h.

template<class INT>
rational< INT >::rational ( const rational< INT > &  o  )  [inline]

Constructor de copia.

Definición en la línea 44 del archivo rational.h.

template<class INT>
rational< INT >::~rational (  )  [inline]

Destructor.

Definición en la línea 46 del archivo rational.h.


Documentación de las funciones miembro

template<class INT>
void rational< INT >::Simplify (  )  [inline, private]

Simplifica el numerador y el denomidador.

Definición en la línea 418 del archivo rational.h.

template<class INT>
void rational< INT >::set ( INT  num = 0,
INT  den = 1 
) [inline]

Cambia el valor del n�mero rational a "n/d".

Definición en la línea 114 del archivo rational.h.

template<class INT>
INT rational< INT >::num (  )  const [inline]

Copia del numerador.

Definición en la línea 50 del archivo rational.h.

template<class INT>
INT rational< INT >::den (  )  const [inline]

Copia del denominador.

Definición en la línea 51 del archivo rational.h.

template<class INT>
rational< INT > & rational< INT >::operator= ( const rational< INT > &  o  )  [inline]

Copia desde "o".

Definición en la línea 128 del archivo rational.h.

template<class INT>
rational< INT > & rational< INT >::operator= ( INT  entero  )  [inline]

Asignaci�n desde un "INT".

Definición en la línea 162 del archivo rational.h.

template<class INT>
rational< INT > & rational< INT >::swap ( rational< INT > &  o  )  [inline]

Intercambia los valores de "*this" y "o".

Complejidad:
O( 1 )
Devuelve:
*this
Ver también:
http://www.di-mare.com/adolfo/binder/c04.htm#sc08

Definición en la línea 145 del archivo rational.h.

template<class INT>
rational & rational< INT >::operator+= ( const rational< INT > &  otro  )  [inline]

Le suma a "*this" el valor de "otro".

Definición en la línea 435 del archivo rational.h.

template<class INT>
rational & rational< INT >::operator-= ( const rational< INT > &  otro  )  [inline]

Le resta a "*this" el valor de "otro".

Definición en la línea 446 del archivo rational.h.

template<class INT>
rational< INT > & rational< INT >::operator *= ( const rational< INT > &  num  )  [inline]

Multiplica "*this" por "num".

Definición en la línea 170 del archivo rational.h.

template<class INT>
rational< INT > & rational< INT >::operator/= ( const rational< INT > &  num  )  [inline]

Divide "*this" por el valor de "num".

Precondición:
  • (num != 0)

Definición en la línea 182 del archivo rational.h.

template<class INT>
rational< INT > rational< INT >::operator- (  )  const [inline]

"-x".

Definición en la línea 193 del archivo rational.h.

template<class INT>
rational & rational< INT >::fromString ( const char *  nStr  )  [inline]

Establece el varlor de "*this" a partir de la hilera "nStr".

Precondición:
"nStr" debe estar escrita en el formato "[num/den]".

Definición en la línea 462 del archivo rational.h.


Documentación de las funciones relacionadas y clases amigas

template<class INT>
template<class T>
rational<T> operator+ ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
rational<T> operator- ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
rational<T> operator * ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
rational<T> operator/ ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
bool operator== ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
bool operator< ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
bool operator!= ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
bool operator<= ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
bool operator>= ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
bool operator> ( const rational< T > &  ,
const rational< T > &   
) [friend]

template<class INT>
template<class T>
ostream& operator<< ( ostream &  COUT,
const rational< INT > &  r 
) [friend]

Graba el valor de "r" en el flujo "COUT".

Definición en la línea 526 del archivo rational.h.

template<class INT>
template<class T>
istream& operator>> ( istream &  CIN,
rational< INT > &  r 
) [friend]

Lee del flujo de texto "CIN" el valor de "r".

Precondición:
El n�mero rational debe haber sido escrito usando el formato "[r/den]", aunque es permisible usar algunos blancos.
  • Se termina de leer el valor s�lo cuando encuentra "]".
  • [ -+-+-+-+- 4 / -- -+ -- 32 ] se lee como [1/8]

Definición en la línea 544 del archivo rational.h.

template<class INT>
template<class T>
double real ( const rational< INT > &  num  )  [friend]

Convertidor a punto flotante.

Definición en la línea 259 del archivo rational.h.

template<class INT>
template<class T>
INT integer ( const rational< INT > &  num  )  [friend]

Convertidor a punto fijo.

Definición en la línea 265 del archivo rational.h.

template<class INT>
template<class T>
bool check_ok ( const rational< INT > &  r  )  [friend]

Verifica la invariante de la clase rational.

Rep Modelo de la clase:
    +---+
    | 3 | <==  m_num == numerador del n�mero racional
    +---+
    |134| <==  m_den == denominador del n�mero racional
    +---+
Comentarios:
Libera al programador de implementar el m�todo Ok()

Definición en la línea 312 del archivo rational.h.


Documentación de los datos miembro

template<class INT>
INT rational< INT >::m_num [private]

Numerador.

Definición en la línea 33 del archivo rational.h.

template<class INT>
INT rational< INT >::m_den [private]

Denominador.

Definición en la línea 34 del archivo rational.h.


La documentación para esta clase fué generada a partir de los siguientes ficheros:
Generado el Thu Sep 6 23:18:36 2007 para Prueba de la clase rational: por  doxygen 1.5.3
Hosted by www.Geocities.ws

1