示例#1
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.");
            }
        }
示例#2
0
文件: Form1.cs 项目: mrno/AHP
        private void button5_Click(object sender, EventArgs e)
        {
            List<AgrAlternativas> listaDeExpertos = new List<AgrAlternativas>();

            AgrAlternativas agrAlternativas1 = new AgrAlternativas();

            NAlternativas nAlternativas1 = new NAlternativas(3);
            double[,] exp1MatrizCriterio1Alternativas = { { 2, 2, 2 }, { 2, 2, 2 }, { 2, 2, 2 } };
            nAlternativas1.nAlternativas = exp1MatrizCriterio1Alternativas;

            NAlternativas nAlternativas2 = new NAlternativas(3);
            double[,] exp1MatrizCriterio2Alternativas = { { 4, 4, 4 }, { 4, 4, 4 }, { 4, 4, 4 } };
            nAlternativas2.nAlternativas = exp1MatrizCriterio2Alternativas;

            agrAlternativas1.listaKNAlternativas.Add(nAlternativas1);
            agrAlternativas1.listaKNAlternativas.Add(nAlternativas2);

            listaDeExpertos.Add(agrAlternativas1);

            AgrAlternativas agrAlternativas2 = new AgrAlternativas();

            NAlternativas nAlternativas3 = new NAlternativas(3);
            double[,] exp2MatrizCriterio1Alternativas = { { 3, 3, 3 }, { 3, 3, 3 }, { 3, 3, 3 } };
            nAlternativas3.nAlternativas = exp2MatrizCriterio1Alternativas;

            NAlternativas nAlternativas4 = new NAlternativas(3);
            double[,] exp2MatrizCriterio2Alternativas = { { 5, 5, 5 }, { 5, 5, 5 }, { 5, 5, 5 } };
            nAlternativas4.nAlternativas = exp2MatrizCriterio2Alternativas;

            agrAlternativas2.listaKNAlternativas.Add(nAlternativas3);
            agrAlternativas2.listaKNAlternativas.Add(nAlternativas4);

            listaDeExpertos.Add(agrAlternativas2);

            AgregacionNoPonderada agregacionNoPonderada = new AgregacionNoPonderada();

            var resultado = agregacionNoPonderada.AgregarAlternativas(listaDeExpertos);

            foreach (var vble in resultado)
            {

                foreach (var d in vble.nAlternativas)
                {
                    System.Diagnostics.Debug.WriteLine(d);
                }

            }
        }