public bool IsExact() { if (_sig == 0) { return(true); } for (var i = 0; i < _sig; ++i) { if (_mag.GetMag(i) != 0) { return(false); } } return(true); }
public static LexoDecimal Make(LexoInteger integer, int sig) { if (integer.IsZero()) { return(new LexoDecimal(integer, 0)); } var zeroCount = 0; for (var i = 0; i < sig && integer.GetMag(i) == 0; ++i) { ++zeroCount; } var newInteger = integer.ShiftRight(zeroCount); var newSig = sig - zeroCount; return(new LexoDecimal(newInteger, newSig)); }