public void Arithmetic_Test() { var natural1 = new Natural(5);//10); //var natural2 = new Natural(-2);//); var natural3 = new Natural(7); int expected = 0; BigInteger expected2 = 0; //var actual = natural1.Add(natural2).Subtract(natural2).Multiply(natural1).Divide(natural2); var actual2 = natural3.Pow(-2);//.Divide(new Natural(new Natural(5).Pow(50).GetBigValue())); //Assert.AreEqual(expected, actual.GetIntValue()); Assert.AreEqual(expected2, actual2.GetBigValue()); //Console.WriteLine("((((10+2)-2)*10)/2) == 50 matches our result: " + actual.GetBigValue()); Console.WriteLine("7^50 / 5^50 == 20248916 w/o decimal matches our result: " + actual2.GetBigValue()); }