Página principal | Lista de namespace | Jerarquía de la clase | Lista de componentes | Lista de archivos | Miembros de las clases | Archivos de los miembros

BigNum.h

Ir a la documentación de este archivo.
00001 // BigNum.h: interface for the BigNum class.
00002 //
00003 //////////////////////////////////////////////////////////////////////
00004 
00005 #if !defined(AFX_BIGNUM_H__54FCBDA3_D21D_11D2_9782_444553540000__INCLUDED_)
00006 #define AFX_BIGNUM_H__54FCBDA3_D21D_11D2_9782_444553540000__INCLUDED_
00007 
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011 #include "LDoble.h"
00012 #include <limits.h>
00013 #include <iostream>
00014 using namespace std;
00015 //typedef PNDoble
00016 const unsigned long int MAXBASE=USHRT_MAX+1;
00017 
00018 class BigNum  
00019 {
00020         LDoble *Lis;
00021         char signo;
00022 private:
00023         virtual void copiar(const BigNum& a);
00024 public:
00025         //Crea el número con valor 0.
00026         BigNum();
00027         //Crea el número con el valor recibido.
00028         BigNum(int);
00029         /*El vector recibido expresa el número en base 65536. Sign indica
00030         el signo del número (1 positivo, -1 negativo).                  */
00031         BigNum(unsigned short int a[],int cant,char sign);
00032         /*Convierte el número desde letras                                                          */
00033         BigNum(char *s);
00034         /*Constructor de copia                                                                                  */
00035         BigNum(const BigNum& a);
00036         /*Pre : el número no es mayor que el maximo long (4294967295).
00037           Post: devuelve el número como long                                                    */
00038         virtual long A_Numero();
00039         virtual BigNum& operator = (const BigNum & a);
00040         friend BigNum operator / (const BigNum & a, const BigNum & b);
00041         friend BigNum operator + (const BigNum & a, const BigNum & b);
00042         friend BigNum operator - (const BigNum & a, const BigNum & b);
00043         friend BigNum operator * (const BigNum & a, const BigNum & b);
00044         friend BigNum operator % (const BigNum & a, const BigNum & b);
00045         friend ostream& operator << (ostream& s, const BigNum & m);
00046         virtual int operator == (const BigNum & a) const;
00047         virtual int operator != (const BigNum & a) const;
00048         virtual int operator > (const BigNum & a) const;
00049         virtual int operator < (const BigNum & a) const;
00050         virtual int operator >= (const BigNum & a) const;
00051         virtual int operator <= (const BigNum & a) const;
00052         virtual BigNum& operator++();
00053         virtual BigNum& operator--();
00054         virtual BigNum& operator += (const BigNum & a);
00055         virtual BigNum& operator -= (const BigNum & a);
00056         virtual BigNum& operator *= (const BigNum & a);
00057         virtual BigNum& operator /= (const BigNum & a);
00058         virtual BigNum& operator %= (const BigNum & a);
00059         BigNum operator- () { return BigNum(0)-(*this); }
00060 /*      friend BigNum& operator++(const BigNum& a);
00061         friend BigNum& operator--(const BigNum& a);*/
00062         virtual ~BigNum();
00063 };
00064 
00065 #endif // !defined(AFX_BIGNUM_H__54FCBDA3_D21D_11D2_9782_444553540000__INCLUDED_)

Generado el Thu Sep 20 12:33:06 2007 para Clase decimal: por  doxygen 1.4.1
Hosted by www.Geocities.ws

1