示例#1
0
        private void btnCalcular_Click(object sender, EventArgs e)
        {
            List <List <double> > matrizCoeficientes = cargarMatrizCoeficientes();

            if (matrizCoeficientes == null)
            {
                MessageBox.Show("La matriz de coeficientes debe contener números", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (normas.Text == "")
            {
                MessageBox.Show("No eligió ninguna norma", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (normas.Text == "1")
            {
                List <List <double> > matrizDeCoeficientes = cargarMatrizCoeficientes();
                double resultado = AnalizadorMatriz.norma1(matrizDeCoeficientes, tamañoMatriz);
                MessageBox.Show("La norma 1 es: " + resultado.ToString(), "Norma 1", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            if (normas.Text == "2")
            {
                List <List <double> > matrizDeCoeficientes = cargarMatrizCoeficientes();
                double resultado = AnalizadorMatriz.norma2(matrizDeCoeficientes, tamañoMatriz);
                MessageBox.Show("La norma 2 es: " + resultado.ToString(), "Norma 2", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            if (normas.Text == "Infinita")
            {
                List <List <double> > matrizDeCoeficientes = cargarMatrizCoeficientes();
                double resultado = AnalizadorMatriz.normaInfinita(matrizDeCoeficientes);
                MessageBox.Show("La norma infinita es: " + resultado.ToString(), "Norma Infinita", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
示例#2
0
        private bool seguirEnBaseADiagonalidad(List <List <double> > coeficientes)
        {
            AnalizadorMatriz.DiagonalidadMatriz tipoDiagonalidad = AnalizadorMatriz.obtenerDiagonalidad(coeficientes, tamañoMatriz);
            lblTipoMatriz.Text  = "Tipo de matriz: ";
            lblTipoMatriz.Text += "\n" + AnalizadorMatriz.aString(tipoDiagonalidad);


            if (tipoDiagonalidad == AnalizadorMatriz.DiagonalidadMatriz.NoDominante)
            {
                DialogResult respuestaNoDiagonalidad = MessageBox.Show("La matriz de coeficientes ingresada no es diagonalmente dominante. ¿Desea modificarla?", "Información", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

                if (respuestaNoDiagonalidad == System.Windows.Forms.DialogResult.Yes)
                {
                    return(false);
                }
            }

            return(true);
        }