Esempio n. 1
0
        public ParyN(ExpansionBase expansionBase, int n)
        {
            expansion = new List <int>(expansionBase.GetK());
            ArrayUtils.Fill(expansion, 0, expansionBase.GetK());
            int i = 0;
            int r;
            int k = n;

            while (k != 0)
            {
                r = k % expansionBase.Pk(i);
                k = k / expansionBase.Pk(i);
                expansion.RemoveAt(i);
                expansion.Insert(i, r);
                i++;
            }
        }
Esempio n. 2
0
        public ParyX Build(decimal x)
        {
            List <int> expansion = new List <int>(expansionBase.GetK());

            ArrayUtils.Fill(expansion, 0, expansionBase.GetK());
            int     i = 0;
            decimal k = x;
            int     r;

            while (k != 0 && i < expansionBase.GetK())
            {
                k = Math.Round(k * expansionBase.Pk(i), roundDecimals);
                r = (int)k / 1;
                k = k % 1;
                expansion.RemoveAt(i);
                expansion.Insert(i, r);
                i++;
            }
            return(new ParyX(expansion, x));
        }