Página principal | Lista de namespace | Lista de componentes | Lista de archivos | Miembros de las clases | Archivos de los miembros

Referencia de la Clase 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 "long".
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< T > &)
template<class T>
istream & operator>> (istream &, rational< T > &)
template<class T>
double real (const rational< T > &)
template<class T>
INT integer (const rational< T > &)
template<class T>
bool check_ok (const rational< T > &r)


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 33 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 42 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 43 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 44 del archivo rational.h.

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

Constructor de copia.

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

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

Destructor.

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


Documentación de las funciones miembro

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

Simplifica el numerador y el denomidador.

  • Transforma el número rational de manera que el numerador y el denominador sean primos relativos, asegurando además que el denominador es siempre positivo.
  • Si (m_num==0) ==> (m_den==1).
  • Simplifica la fracción para que m_num y m_den sean números primos relativos ie, mcd(m_num,m_den) == 1.
  • Asegura que m_den sea un número positivo.
  • Restaura la invariante de la clase rational.

Definición en la línea 393 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 102 del archivo rational.h.

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

Copia del numerador.

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

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

Copia del denominador.

Definición en la línea 53 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 116 del archivo rational.h.

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

Asignación desde un "long".

Definición en la línea 150 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 133 del archivo rational.h.

template<class INT>
rational< INT > & rational< INT >::operator+= const rational< INT > &   ) 
 

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

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

template<class INT>
rational< INT > & rational< INT >::operator-= const rational< INT > &   ) 
 

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

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

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

Multiplica "*this" por "num".

Definición en la línea 158 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 170 del archivo rational.h.

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

"-x".

  • Menos unario
  • Calcula y retorna el valor "-x"

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

template<class INT>
rational< INT > & rational< INT >::fromString const char *  nStr  ) 
 

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 437 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 &  ,
const rational< T > & 
[friend]
 

template<class INT>
template<class T>
istream& operator>> istream &  ,
rational< T > & 
[friend]
 

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

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

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


Documentación de los datos miembro

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

Numerador.

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

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

Denominador.

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


La documentación para esta clase fué generada a partir del siguiente archivo:
Generado el Thu Aug 30 17:50:35 2007 para A41369- A55609 Tarea Programada 2 por  doxygen 1.4.1
Hosted by www.Geocities.ws

1