public void Run(string[] args)
        {
            CheckArguments(args);

            var stringBuilderOne = new StringBuilder();
            var stringBuilderTwo = new StringBuilder();

            Console.WriteLine("// " + (Formatter is CPPOutputFormatter ? "C++" : "C#") + " code for compute invertion " + MatrixSize + " x " + MatrixSize + " matrix by willnode and ThomasCZ");
            Console.WriteLine();

            WriteDeterminant(MatrixSize, stringBuilderOne);
            WriteInverse(MatrixSize, stringBuilderTwo);

            if (O >= 2)
            {
                WriteCachedCodes();
            }

            Console.WriteLine(Formatter.Determinant(stringBuilderOne.ToString()));
            Console.WriteLine(Formatter.Result(MatrixSize, stringBuilderTwo.ToString()));
        }