示例#1
0
        public double[,] AgregarCriterios(AgrCriterio listaKCriterios)
        {
            //int i = listaKCriterios.listaCriterios.Count;
               int i = listaKCriterios.listaCriterios[0].GetLength(0);
               double[,] salida = new double[i,i];
               utils.Unar(salida, i);

               foreach (var VARIABLE in listaKCriterios.listaCriterios)
               {
               utils.Productoria(salida, VARIABLE);
               }

               return salida;
        }
示例#2
0
文件: Form1.cs 项目: mrno/AHP
 private void button4_Click(object sender, EventArgs e)
 {
     AgrCriterio listaKCriterios = new AgrCriterio();
     double[,] a = { { 2, 2, 2 }, { 2, 2, 2 }, { 2, 2, 2 } };
     double[,] b = { { 4, 4, 4 }, { 4, 4, 4 }, { 4, 4, 4}};
     double[,] c = { { 3, 3, 3 }, { 3, 3, 3 }, { 3, 3, 3 } };
     listaKCriterios.listaCriterios.Add(b);
     listaKCriterios.listaCriterios.Add(c);
     listaKCriterios.listaCriterios.Add(a);
     AgregacionNoPonderada agrCriterio = new AgregacionNoPonderada();
      double[,] resultado = agrCriterio.AgregarCriterios(listaKCriterios);
     foreach (var dd in resultado)
     {
         System.Diagnostics.Debug.WriteLine(dd);
     }
 }
示例#3
0
        private void button2_Click(object sender, EventArgs e)
        {
            proyecto proy = (proyecto)dataGridView1.CurrentRow.DataBoundItem;
            listaExperto = dato.expeProyConsistente(proy.id_proyecto);

            if (listaExperto.Count != 0)
            {
                foreach (experto exp in listaExperto)
                {

                    AgrAlternativas altAgregar = new AgrAlternativas(proy.id_proyecto, exp.id_experto);
                    listaAlternativasPonderar.Add(altAgregar);
                }

                matrizCriterioPonderar = new AgrCriterio(proy.id_proyecto);

                //Acá procedo a agregarle la primer matriz, la de criterios:

                listaCompleta.Add(calculadorNoPonderadas.AgregarCriterios(matrizCriterioPonderar));

                //Acá creo una lista con las alternativas ponderadas en la primer línea y luego la recorro y para cada elemento le asigno
                //su valor de atributo a la listaCompleta:

                listaNAlt = calculadorNoPonderadas.AgregarAlternativas(listaAlternativasPonderar);

                foreach (NAlternativas alt in listaNAlt)
                {
                    listaCompleta.Add(alt.nAlternativas);
                }

                //Luego de todo este despelote, listaCompleta está terminada para pasarse a la clase CalculoAHP.

                CalculoAHP calculo = new CalculoAHP();
                ranking = calculo.calcularRanking(listaCompleta);
                CalcularAhpAgregado frmAhpAgregado = new CalcularAhpAgregado(ranking, proy.id_proyecto);
                frmAhpAgregado.ShowDialog();
            }
            else
            {
                MessageBox.Show("Ningún experto ha valorado de manera consistente.");
            }
        }