Ejemplo n.º 1
0
        public static void Iteraciones(int k, int num_nodos, int num_clusters, ListaNodos listaN, ListaClusters listaC)
        {
            String ListaNombres = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

            double[,] resultados = new double[num_clusters, num_nodos];
            Console.WriteLine("Iteracion numero " + k + ": ");
            for (int i = 0; i < num_clusters; i++)
            {
                Console.WriteLine("Cluster " + (i + 1) + ": ");
                double[] cluster = listaC.DameCordenadas((i + 1));
                for (int j = 0; j < num_nodos; j++)
                {
                    Console.WriteLine("Nodo " + ListaNombres.Substring(j, 1) + ": ");
                    double[] nodo   = listaN.DameCordenadas((j + 1));
                    double   valor1 = Potencia((cluster[0] - nodo[0]));
                    double   valor2 = Potencia((cluster[1] - nodo[1]));
                    resultados[i, j] = Math.Sqrt(valor1 + valor2);
                    resultados[i, j] = Math.Truncate(resultados[i, j] * 100) / 100;
                    Console.WriteLine("((" + cluster[0] + "-" + nodo[0] + ")^2 + (" + cluster[1] + "-" + nodo[1] + ")^2)^1/2=  " + resultados[i, j]);
                }
                Console.WriteLine("\n");
            }

            double resultadomenor = resultados[0, 0];
            int    position       = 0;

            for (int j = 0; j < num_nodos; j++)
            {
                for (int i = 0; i < num_clusters; i++)
                {
                    if (resultadomenor < resultados[i, j])
                    {
                        resultadomenor = resultados[i, j];
                        position       = i;
                    }
                    ;
                }
                Console.WriteLine();
            }
            Console.Read();
        }