Beispiel #1
0
    bool Check(int[] A, int P)
    {
        var S = new Integer(A[0], P);

        S.Check();
        foreach (var a in A.Skip(1))
        {
            if (a > S.Length)
            {
                S.Add(a - S.Length); S.Check();
            }
            else
            {
                S.Cut(a);
                S.Check();
                if (!S.Increment())
                {
                    return(false);
                }
                S.Check();
            }
            if (S.Length != a)
            {
                throw new Exception();
            }
            // WriteLine(S);
        }
        return(true);
    }
 static void Main()
 {
     Integer Num = new Integer(3);
     Console.WriteLine("덧셈 : " + Num.Add(2));
     Console.WriteLine("곱셈 : " + Num.Mul(2));
     Console.WriteLine("뺄셈 : " + Num.Sub(2));
 }
Beispiel #3
0
        public void Add(Integer left, Integer right, Integer expected)
        {
            using (Immutability.Guard(left, right))
            {
                var actualOp = left + right;
                var actualFu = left.Add(right);

                Assert.Equal(expected, actualOp);
                Assert.Equal(expected, actualFu);
            }
        }
Beispiel #4
0
    bool Check(int[] A, int P)
    {
        var S = new Integer(A[0], P);

        foreach (var a in A.Skip(1))
        {
            if (a > S.Length)
            {
                S.Add(a - S.Length);
            }
            else
            {
                S.Cut(a);
                if (!S.Increment())
                {
                    return(false);
                }
            }
        }
        return(true);
    }
Beispiel #5
0
 internal override Integer Op(Integer lhs, Integer rhs)
 {
     return(lhs.Add(rhs));
 }
Beispiel #6
0
 //TODO: verify this works
 /// <summary>Addition of the integer portions of two vars</summary>
 /// <param name="vi"></param>
 /// <returns></returns>
 /// <remarks>Fractional value is not returned</remarks>
 public IEnumerable <RegisterA> Add(VInteger vi) => Integer.Add(vi);