Exemple #1
0
        static void Main(string[] args)
        {
            // 2x0 + 0x1 + 3x2 and polynomial 0x0 + 1x1 + 0x2
            var p1 = new Polynomial(new[] { 2, 0, 3 }, new[] { 0, 1, 2 }); // 2 + 0x + 3x²
            var p2 = new Polynomial(new[] { 0, 1, 0 }, new[] { 0, 1, 2 }); // 0 + 1x + 0x²

            // Add
            Console.WriteLine("Add:");
            var p3 = Polynomial.Add(p1, p2); // -> 6 + 5x (6, 0; 5, 1)

            Console.WriteLine(p1.ToString());
            Console.WriteLine(p2.ToString());
            Console.WriteLine(p3.ToString());

            // 2x⁰ + 3x¹  X  1x² + 1x³  =  2x² + 5x³ + 3x⁴
            var p4 = new Polynomial(new[] { 2, 3 }, new[] { 0, 1 }); // 2x⁰ + 3x¹
            var p5 = new Polynomial(new[] { 1, 1 }, new[] { 2, 3 }); // 1x² + 1x³

            // Multiply
            Console.WriteLine("\r\nMultiply:");
            var p6 = Polynomial.Multiply(p4, p5); // 2x² + 5x³ + 3x⁴

            Console.WriteLine(p4.ToString());
            Console.WriteLine(p5.ToString());
            Console.WriteLine(p6.ToString());

            // Multiply with Remove Zero Coefficients
            Console.WriteLine("\r\nMultiply with Remove Zero Coefficients:");
            var p7 = Polynomial.MultiplyRemoveZeroCoefficient(p4, p5); // 2x² + 5x³ + 3x⁴

            Console.WriteLine(p7.ToString());

            // Remove Zero Coefficients:
            Console.WriteLine("\r\nRemove Zero Coefficients:");
            var p8 = new Polynomial(new[] { 0, 2, 0, 3 }, new[] { 0, 1, 2, 3 });

            Console.WriteLine(p8.ToString());
            p8.RemoveZeroCoefficient();
            Console.WriteLine(p8.ToString());

            // Zero polynomial
            Console.WriteLine("\r\nZero polynomial:");
            var p9 = new Polynomial(new [] { 0, 0, 0, 0 }, new [] { 0, 1, 2, 3 });

            Console.WriteLine(p9.ToString());
            p9.RemoveZeroCoefficient();
            Console.WriteLine(p9.ToString());

            Console.ReadLine();
        }