Пример #1
0
        public static MatrizBase SetarMatriz(string opcaoSelecionada, MatrizBase matrizBase)
        {
            switch (opcaoSelecionada)
            {
            case "SOMAR":
                matrizBase = new M_Somar();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz2());
                break;

            case "SUBTRAIR":
                matrizBase = new M_Subtrair();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz2());
                break;

            case "TRANSPOSTA":
                matrizBase = new M_Transposta();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz1());
                break;

            case "OPOSTA":
                matrizBase = new M_Oposta();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz1());
                break;

            case "MULTIPLICAR":
                matrizBase = new M_Multiplicar();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz2());
                break;

            case "DETERMINANTE 2X2":
                matrizBase = new M_Determinante2x2();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz1());
                break;

            case "DETERMINANTE 3X3":
                matrizBase = new M_Determinante3x3();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz1());
                break;

            case "INVERSA 2X2":
                matrizBase = new M_Inversa2x2();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz1());
                break;

            case "INVERSA 3X3":
                matrizBase = new M_Inversa3x3();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz1());
                break;

            default:
                matrizBase = new M_Somar();
                matrizBase.Calcular(Gerador.getInstance().getMatriz1(), Gerador.getInstance().getMatriz2());
                break;
            }

            return(matrizBase);
        }
Пример #2
0
        public override void Calcular(TextBox[,] matriz1, TextBox[,] matriz2)
        {
            base.Calcular(matriz1, matriz2);
            det = M_Determinante2x2.Determinante(matriz1);

            if (det != 0)
            {
                float[,] valor = inversa(matriz1);
                gerador.setMatriz3(0, 0, valor[0, 0].ToString());
                gerador.setMatriz3(1, 0, valor[1, 0].ToString());
                gerador.setMatriz3(0, 1, valor[0, 1].ToString());
                gerador.setMatriz3(1, 1, valor[1, 1].ToString());

                det = 0;
            }
            else
            {
                MessageBox.Show("Essa matriz não tem inverssa");
                det = 0;
            }

            TextBox[,] Resultado = Gerador.getInstance().getMatriz3();
        }