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."); } }
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); } } }