Exemple #1
0
        public void TestMinus()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("3333");
            int[] v2     = BigNumberHelper.GetArrayFromString("1111");
            int[] ex     = BigNumberHelper.GetArrayFromString("2222");
            var   actual = BigNumberHelper.Minus(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #2
0
        public void TestPlusBothEmpty()
        {
            int[] v1     = {};
            int[] v2     = {};
            int[] ex     = {};
            var   actual = BigNumberHelper.Plus(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #3
0
        public void TestPlusWithFinalCarry()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("654321");
            int[] v2     = BigNumberHelper.GetArrayFromString("765432");
            int[] ex     = BigNumberHelper.GetArrayFromString("1419753");
            var   actual = BigNumberHelper.Plus(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #4
0
        public void TestMultiplyKaratsubaV2Null()
        {
            int[] v1     = { 1, 2, 3, 4 };
            int[] v2     = null;
            int[] ex     = {};
            var   actual = BigNumberHelper.MultiplyKaratsuba(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #5
0
        public void TestPlusV2Null()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("987654321");
            int[] v2     = null;
            int[] ex     = BigNumberHelper.GetArrayFromString("987654321");
            var   actual = BigNumberHelper.Plus(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #6
0
        public void TestMultiplyKaratsuba2()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("123456789");
            int[] v2     = BigNumberHelper.GetArrayFromString("8888");
            int[] ex     = BigNumberHelper.GetArrayFromString("1097283940632");
            var   actual = BigNumberHelper.MultiplyKaratsuba(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #7
0
        public void TestMultiplyKaratsuba3()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("1234567891011121314151617181920");
            int[] v2     = BigNumberHelper.GetArrayFromString("2019181716151413121110987654321");
            int[] ex     = BigNumberHelper.GetArrayFromString("2492816912877266687794240983772975935013386905490061131076320");
            var   actual = BigNumberHelper.MultiplyKaratsuba(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #8
0
        public void TestMultiplyKaratsuba1()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("1234");
            int[] v2     = BigNumberHelper.GetArrayFromString("5678");
            int[] ex     = BigNumberHelper.GetArrayFromString("7006652");
            var   actual = BigNumberHelper.MultiplyKaratsuba(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #9
0
        public void TestMultiplyV1Null()
        {
            int[] v1     = null;
            int[] v2     = { 2, 3, 4, 5 };
            int[] ex     = {};
            var   actual = BigNumberHelper.Multiply(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #10
0
        public void TestMultiplyV2Empty()
        {
            int[] v1     = { 1, 2, 3, 4 };
            int[] v2     = {};
            int[] ex     = {};
            var   actual = BigNumberHelper.Multiply(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #11
0
        public void TestMultiply1()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("9999");
            int[] v2     = BigNumberHelper.GetArrayFromString("9999");
            int[] ex     = BigNumberHelper.GetArrayFromString("99980001");
            var   actual = BigNumberHelper.Multiply(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #12
0
        public void TestMinusV1Smaller()
        {
            int[] v1     = BigNumberHelper.GetArrayFromString("1111");
            int[] v2     = BigNumberHelper.GetArrayFromString("1999");
            int[] ex     = { 0, 0, 0, 0 };
            var   actual = BigNumberHelper.Minus(v1, v2);

            CollectionAssert.AreEqual(ex, actual);
        }
Exemple #13
0
        public void TestMinusNumber()
        {
            int n, carry;

            (n, carry) = BigNumberHelper.MinusNumber(8, 9, 0);
            Assert.AreEqual(9, n);
            Assert.AreEqual(-1, carry);

            (n, carry) = BigNumberHelper.MinusNumber(8, 9, -1);
            Assert.AreEqual(8, n);
            Assert.AreEqual(-1, carry);
        }
Exemple #14
0
 public void TestGetNumberArrayFromStringException()
 {
     CollectionAssert.AreEqual(new [] { 5, 4, 3, 2, 1 }, BigNumberHelper.GetArrayFromString("012345"));
 }
Exemple #15
0
 public void TestGetArrayFromNumber()
 {
     CollectionAssert.AreEqual(new [] { 5, 4, 3, 2, 1 }, BigNumberHelper.GetArrayFromNumber(12345));
 }
Exemple #16
0
 public void TestGetArrayMultiply10PowerN()
 {
     CollectionAssert.AreEqual(new [] { 0, 0, 0, 1, 2, 3 }, BigNumberHelper.GetArrayMultiply10PowerN(new [] { 1, 2, 3 }, 3));
 }