Number::Number Class Reference

List of all members.

Public Member Functions

def __init__
def type
def new
def copy
def __cmp__
def __hash__
def __str__
def __repr__
def asString
def asUString
def decrementPower
def isPrime
def magnitude
def power
def prime
def used
def sgmftr
def mersenne


Detailed Description

A holder for a prime (p) and its exponent (q).

Definition at line 11 of file Number.py.


Member Function Documentation

def Number::Number::__cmp__ (   self,
  other 
)

Definition at line 34 of file Number.py.

00034                               :
00035         sp = self.prime( )
00036         op = other.prime( )
00037         sq = self.power( )
00038         oq = other.power( )
00039 
00040         if sp != op:
00041             return sp - op
00042         else:
00043             return sq - oq
00044 
    def __hash__( self ):

def Number::Number::__hash__ (   self  ) 

Definition at line 45 of file Number.py.

00045                         :
00046         an = self._p * self._q
00047         an = int( an % 1000000 )
00048         return an
00049 
    def __str__( self ):

def Number::Number::__init__ (   self,
  prime = 0,
  power = 0,
  used = False,
  str = None 
)

Definition at line 17 of file Number.py.

00017                                                                 :
00018         self._p = mpz( prime )
00019         self._q = mpz( power )
00020         self._u = used
00021         self._s = str
00022 
    def type( self ):

def Number::Number::__repr__ (   self  ) 

Format as string

Definition at line 57 of file Number.py.

00057                         :
00058         """
00059         Format as string
00060         """
00061 
00062         return self.asString( )
00063 
    def asString( self ):

def Number::Number::__str__ (   self  ) 

Format as string

Definition at line 50 of file Number.py.

00050                        :
00051         """
00052         Format as string
00053         """
00054 
00055         return self.asString( )
00056 
    def __repr__( self ):

def Number::Number::asString (   self  ) 

Format as string

Definition at line 64 of file Number.py.

00064                         :
00065         """
00066         Format as string
00067         """
00068 
00069         if self._s == None:
00070             self._s =  "%s^%s" % ( self._p, self._q )
00071 
00072         return self._s
00073 
    def asUString( self ):

def Number::Number::asUString (   self  ) 

Definition at line 74 of file Number.py.

00074                          :
00075         ans = self.asString( )
00076         if self._u:
00077             ans += ".u"
00078         else:
00079             ans += " "
00080         return ans
00081 
    def decrementPower( self ):

def Number::Number::copy (   self  ) 

Definition at line 30 of file Number.py.

00030                     :
00031         # answer a copy of self
00032         return Number( self._p, self._q, self._u, self._s )
00033 
    def __cmp__( self, other ):

def Number::Number::decrementPower (   self  ) 

Definition at line 82 of file Number.py.

00082                               :
00083         if self._q <= 1:
00084             return False
00085         else:
00086             self._q -= 1
00087             self._s = None
00088             return True
00089 
    def isPrime( self ):

def Number::Number::isPrime (   self  ) 

Definition at line 90 of file Number.py.

00090                        :
00091         if self._q == 1:
00092             return True
00093         else:
00094             return False
00095 
    def magnitude( self ):

def Number::Number::magnitude (   self  ) 

Answer the instance variable q.

Definition at line 96 of file Number.py.

00096                          :
00097         """
00098         Answer the instance variable q.
00099         """
00100 
00101         return self._p ** self._q
00102 
    def power( self, anInteger = 0 ):

def Number::Number::mersenne (   self  ) 

Definition at line 149 of file Number.py.

00149                         :
00150         return None
00151         ##################################################
########        if self._p != 2:

def Number::Number::new (   self,
  prime,
  power 
)

Definition at line 27 of file Number.py.

00027                                  :
00028         n = self.___init__( self, prime, power )
00029 
    def copy( self ):

def Number::Number::power (   self,
  anInteger = 0 
)

Get/Set the instance variable q.

Definition at line 103 of file Number.py.

00103                                     :
00104         """
00105         Get/Set the instance variable q.
00106         """
00107 
00108         if anInteger:
00109             self._q = anInteger
00110             self._s = None
00111 
00112         return self._q
00113 
    def prime( self, anInteger = None ):

def Number::Number::prime (   self,
  anInteger = None 
)

Get/Set the instance variable p.

Definition at line 114 of file Number.py.

00114                                        :
00115         """
00116         Get/Set the instance variable p.
00117         """
00118 
00119         if anInteger:
00120             self._p = anInteger
00121             self._s = None
00122 
00123         return self._p
00124 
    def used( self, aBoolean = None ):

def Number::Number::sgmftr (   self  ) 

Answer the sum of the factors of prime^power.

Definition at line 135 of file Number.py.

00135                       :
00136         """
00137         Answer the sum of the factors of prime^power.
00138         """
00139 
00140         if self._q <= 0:
00141             print "Number::sgmftr( %d, %d )" % ( self._p, self._q )
00142             pydb.debugger( )
00143 
00144         sf = SigmaFactor.SigmaFactor( self._p, self._q )
00145         an = sf.value( )
00146 
00147         return an
00148 
    def mersenne( self ):

def Number::Number::type (   self  ) 

Definition at line 23 of file Number.py.

00023                     :
00024 
00025         return "Number"
00026 
    def new( self, prime, power ):

def Number::Number::used (   self,
  aBoolean = None 
)

Get/Set the instance variable u.

Definition at line 125 of file Number.py.

00125                                      :
00126         """
00127         Get/Set the instance variable u.
00128         """
00129 
00130         if aBoolean != None:
00131             self._u = aBoolean
00132 
00133         return self._u
00134 
    def sgmftr( self ):


The documentation for this class was generated from the following file:

Generated on Sun Mar 22 09:59:14 2009 for Multiperfect Number Generator by  doxygen 1.5.8