Exemple #1
0
        static void Main(string[] args)
        {
            MatrixM mtrc1 = new MatrixM(10, 10);
            MatrixM mtrc2 = new MatrixM(10, 10);

            mtrc1.fillMatrix(40);

            mtrc2.fillMatrix(60);

            Console.WriteLine("Matrica 1:");
            MatrixM.displayMatrix(mtrc1);

            Console.WriteLine("Matrica 2:");
            MatrixM.displayMatrix(mtrc2);

            Console.WriteLine("Matrice 1.Spocitat, 2.Odratat, 3.nasobit, 4.unar operator - ?");
            string function = Console.ReadLine();

            MatrixM res = new MatrixM(10, 10);

            try
            {
                switch (function)
                {
                case "1":
                    res = mtrc1 + mtrc2;
                    MatrixM.displayMatrix(res, "Suma");
                    MatrixM.unaryNegat(res);
                    break;

                case "2":
                    res = mtrc1 - mtrc2;
                    MatrixM.displayMatrix(res, "Ocitanie");
                    MatrixM.unaryNegat(res);
                    break;

                case "3":
                    res = mtrc1 * mtrc2;
                    MatrixM.displayMatrix(res, "Nasobenie");
                    MatrixM.unaryNegat(res);
                    break;
                }

                Console.WriteLine("Pozicia riadok {0} stlpec {1} vysledok:{2}", 4, 5, res[4, 5]);

                Console.ReadKey();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                Console.ReadKey();
            }
        }
Exemple #2
0
        public static void unaryNegat(MatrixM m)
        {
            MatrixM r = new MatrixM(m.Rows, m.Cols);

            for (int i = 0; i < m.Rows; i++)
            {
                for (int j = 0; j < m.Cols; j++)
                {
                    r[i, j] = -m[i, j];
                }
            }
            MatrixM.displayMatrix(r, "unary Negat");
        }
Exemple #3
0
        private static MatrixM mSub(MatrixM m1, MatrixM m2)
        {
            MatrixM m = new MatrixM(m1.Rows, m1.Cols);

            for (int i = 0; i < m1.Rows; i++)
            {
                for (int j = 0; j < m1.Cols; j++)
                {
                    m[i, j] = m1[i, j] - m2[i, j];
                }
            }

            return(m);
        }
Exemple #4
0
        public static void displayMatrix(MatrixM matrix, string type = "vypis")
        {
            Console.WriteLine("Matrica vypis ({0}):", type);
            int n = matrix.Cols;
            int m = matrix.Rows;

            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    Console.Write(matrix[i, j] + ",");
                }
                Console.WriteLine();
            }
        }
Exemple #5
0
        private static MatrixM multi(MatrixM m1, MatrixM m2)
        {
            MatrixM m = new MatrixM(m1.Rows, m1.Cols);

            for (int i = 0; i < m1.Rows; i++)
            {
                for (int j = 0; j < m1.Cols; j++)
                {
                    for (int k = 0; k < m1.Cols; k++)
                    {
                        m[i, j] += m1[i, k] * m2[k, j];
                    }
                }
            }
            return(m);
        }
Exemple #6
0
 public static MatrixM operator *(MatrixM m1, MatrixM m2)
 {
     return(MatrixM.multi(m1, m2));
 }
Exemple #7
0
 public static MatrixM operator -(MatrixM m1, MatrixM m2)
 {
     return(MatrixM.mSub(m1, m2));
 }