|
| Z () |
|
template<typename TT > |
| Z (TT n) |
|
| Z (double n) |
|
| Z (char *s) |
|
| Z (const Z< p, T > &z) |
|
Z< p, T > & | operator= (const Z< p, T > &z) |
|
Z< p, T > & | operator+= (const Z< p, T > z) |
|
Z< p, T > & | operator-= (const Z< p, T > z) |
|
Z< p, T > & | operator*= (const Z< p, T > z) |
|
Z< p, T > & | operator/= (const Z< p, T > z) |
|
bool | operator== (const Z< p, T > &z) const |
|
bool | operator!= (const Z< p, T > &z) const |
|
Z< p, T > | operator+ (const Z< p, T > &b) const |
|
Z< p, T > | operator- (const Z< p, T > &b) const |
|
template<typename Typ > |
bool | operator> (const Typ &b) const |
|
Z< p, T > | operator* (const Z< p, T > &b) const |
|
Z< p, T > | operator* (const int b) const |
|
Z< p, T > | operator/ (const Z< p, T > &b) const |
|
template<int p, class T = int>
class Z< p, T >
Integers modulo p. The number p should be a prime number, otherwise inversion and exponentiation may not be valid.