Beispiel #1
0
        public void llamadoDeFuncionMenosDe4(ArrayList listaPalabras)
        {
            listaDeTodosLosResultadosParalelo.Clear();

            Globales global           = new Globales();
            int      cantidadPalabras = listaPalabras.Count;

            Console.WriteLine("LARGO DE LA LISTA DESDE FUNION<3" + cantidadPalabras);

            string palabraBuscar1 = "";
            string palabraBuscar2 = "";
            string palabraBuscar3 = "";
            string palabraBuscar4 = "";

            ArrayList lista2 = global.retornarLista();

            Paralelo llamarFuncionParalela = new Paralelo();



            if (cantidadPalabras == 1)
            {
                var process = System.Diagnostics.Process.GetCurrentProcess();
                process.ProcessorAffinity = new IntPtr(0x0001);

                int cont = 0;
                foreach (String var in listaPalabras)
                {
                    if (cont == 0)
                    {
                        palabraBuscar1 = var;
                        Console.WriteLine("Palabra: " + palabraBuscar1);
                    }
                    cont = cont + 1;
                }

                Parallel.Invoke(() =>
                {
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar1);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                });
            }
            else if (cantidadPalabras == 2)
            {
                var process = System.Diagnostics.Process.GetCurrentProcess();
                process.ProcessorAffinity = new IntPtr(0x0003);

                int cont = 0;
                foreach (String var in listaPalabras)
                {
                    if (cont == 0)
                    {
                        palabraBuscar1 = var;
                    }

                    else if (cont == 1)
                    {
                        palabraBuscar2 = var;
                    }

                    cont = cont + 1;
                }

                Parallel.Invoke(() =>
                {
                    Console.WriteLine("1");
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar1);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                },

                                () =>
                {
                    Console.WriteLine("2");
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar2);

                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                });
            }

            else if (cantidadPalabras == 3)

            {
                var process = System.Diagnostics.Process.GetCurrentProcess();
                process.ProcessorAffinity = new IntPtr(0x0007);

                int cont = 0;
                foreach (String var in listaPalabras)
                {
                    if (cont == 0)
                    {
                        palabraBuscar1 = var;
                    }

                    else if (cont == 1)
                    {
                        palabraBuscar2 = var;
                    }
                    else if (cont == 2)
                    {
                        palabraBuscar3 = var;
                    }

                    cont = cont + 1;
                }

                Parallel.Invoke(() =>
                {
                    Console.WriteLine("1");
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar1);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                },



                                () =>
                {
                    Console.WriteLine("1");
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar3);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                },


                                () =>
                {
                    Console.WriteLine("2");
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar2);

                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                });
            }

            else
            {
                var process = System.Diagnostics.Process.GetCurrentProcess();
                process.ProcessorAffinity = new IntPtr(0x0009);


                int cont = 0;
                foreach (String var in listaPalabras)
                {
                    if (cont == 0)
                    {
                        palabraBuscar1 = var;
                    }

                    else if (cont == 1)
                    {
                        palabraBuscar2 = var;
                    }
                    else if (cont == 2)
                    {
                        palabraBuscar3 = var;
                    }

                    else if (cont == 3)
                    {
                        palabraBuscar4 = var;
                    }

                    cont = cont + 1;
                }

                Parallel.Invoke(() =>
                {
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar1);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                },

                                () =>

                {
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar2);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                },

                                () =>

                {
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar3);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                },

                                () =>

                {
                    listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar4);
                    agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
                });
            }
        }
Beispiel #2
0
        //lama a todoooooooooo
        private void toolStripButton4_Click(object sender, EventArgs e)
        {
            verficacionBoton = 1;
            Globales  global = new Globales();
            ArrayList lista  = global.retornarLista();

            Globales.Puntos.Clear();



            valueCPUSecuencial = this.theCPUCounter.NextValue();
            if (valueCPUSecuencial != 0)
            {
                global.agregarPuntos(valueCPUSecuencial);
            }



            Globales.imprimirInformacionGrafico.Clear();

            DiagramaEstatico.Series.Clear();



            diagramaDinamico.GraphPane.CurveList[0].Clear();
            diagramaDinamico.Refresh();
            listaResultados.Items.Clear();
            textBoxContieneTiempoTotal.Clear();

            if (formaSecuencial.Checked == true)
            {
                listaResultados.Items.Clear();
                textBoxContieneTiempoTotal.Clear();
                Secuencial llamar  = new Secuencial();
                String     palabra = palabraABuscar.Text;


                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }

                string[] variasPalabra = palabra.Split(';');



                cronoTotal = Stopwatch.StartNew();

                int cont = 0;


                foreach (string unaPalabra in variasPalabra)
                {
                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }


                    Console.WriteLine("busqueda de palabra: " + cont);
                    ArrayList recorrido = llamar.recorrerListaDeFormaSecuencial(lista, unaPalabra);



                    Console.WriteLine("largo de lista imprimir: " + recorrido.Count);
                    if (recorrido.Count != 0)
                    {
                        valueCPUSecuencial = this.theCPUCounter.NextValue();
                        if (valueCPUSecuencial != 0)
                        {
                            global.agregarPuntos(valueCPUSecuencial);
                        }
                        imprimir(recorrido);
                    }



                    cont = cont + 1; // cont de prueba
                }

                tiempoTotal = cronoTotal.ElapsedMilliseconds;



                String tiempoImprimirComoString = tiempoTotal.ToString();
                textBoxContieneTiempoTotal.Clear();

                textBoxContieneTiempoTotal.AppendText(tiempoImprimirComoString);



                ArrayList palabrasIguales = new ArrayList();
                Console.WriteLine(Globales.imprimirInformacionGrafico.Count + "hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");

                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }

                foreach (String elemento in Globales.imprimirInformacionGrafico)
                {
                    Console.WriteLine(Globales.imprimirInformacionGrafico.Count + "hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");

                    Console.WriteLine(Globales.imprimirInformacionGrafico.Count + "ñññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññ");
                    string[] infoGrafico = elemento.Split(';');



                    Console.WriteLine("infografico sub cero: " + infoGrafico[0]);
                    Console.WriteLine("infografico sub uno: " + infoGrafico[1]);
                    Console.WriteLine("infografico sub dos: " + infoGrafico[2]);

                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }


                    Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista");
                    if (palabrasIguales.Count != 0)
                    {
                        valueCPUSecuencial = this.theCPUCounter.NextValue();
                        if (valueCPUSecuencial != 0)
                        {
                            global.agregarPuntos(valueCPUSecuencial);
                        }

                        Console.WriteLine(palabrasIguales.Count + "   es el largo de palabrsas iguales");
                        int numero = 0;

                        int contadorAuxiliar = 0;



                        listaTemporalDePalabrasBuscadas.Clear();
                        foreach (string var in palabrasIguales)
                        {
                            listaTemporalDePalabrasBuscadas.Add(var);
                        }



                        while (numero < listaTemporalDePalabrasBuscadas.Count)
                        {
                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }


                            Console.WriteLine("contadorAuxiliar  ////////////////////" + contadorAuxiliar);
                            Console.WriteLine("2  ////////////////////" + Globales.imprimirInformacionGrafico.Count);
                            if (contadorAuxiliar == Globales.imprimirInformacionGrafico.Count - 1)
                            {
                                return;
                            }


                            Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                            Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                            Console.WriteLine(numero + " contador");
                            int contadorNombre = 1;

                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }

                            Console.WriteLine("arriba palabrasIguales[contadorAuxiliar]" + palabrasIguales[contadorAuxiliar]);
                            Console.WriteLine("arriba  infoGrafico[0])" + infoGrafico[0]);
                            if (listaTemporalDePalabrasBuscadas[contadorAuxiliar].Equals(infoGrafico[0]))
                            {
                                infoGrafico[0] = infoGrafico[0] + palabrasIguales.Count;


                                Console.WriteLine("con aumentar contador   infoGrafico[0])" + infoGrafico[0]);
                                Series serie2 = DiagramaEstatico.Series.Add(infoGrafico[0]);
                                int    cantidadDeInsidenciasU2 = Int32.Parse(infoGrafico[2]);


                                serie2.Points.Add(cantidadDeInsidenciasU2);
                                palabrasIguales.Add(infoGrafico[0]);

                                valueCPUSecuencial = this.theCPUCounter.NextValue();
                                if (valueCPUSecuencial != 0)
                                {
                                    global.agregarPuntos(valueCPUSecuencial);
                                }

                                Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                                Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                                contadorNombre   = contadorNombre + 1;
                                contadorAuxiliar = contadorAuxiliar + 1;
                                break;
                            }
                            contadorAuxiliar = contadorAuxiliar + 1;

                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }


                            numero = numero + 1;
                        }

                        if (listaTemporalDePalabrasBuscadas.Count == palabrasIguales.Count)
                        {
                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }

                            Console.WriteLine(infoGrafico[0] + "        rrrrrrrrr");
                            Console.WriteLine(infoGrafico[2] + "        rrrrrrrrr");
                            Series serie5 = DiagramaEstatico.Series.Add(infoGrafico[0]);
                            int    cantidadDeInsidenciasU5 = Int32.Parse(infoGrafico[2]);



                            serie5.Points.Add(cantidadDeInsidenciasU5);
                            palabrasIguales.Add(infoGrafico[0]);

                            Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                            Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                            listaTemporalDePalabrasBuscadas.Clear();
                            foreach (string var in palabrasIguales)
                            {
                                listaTemporalDePalabrasBuscadas.Add(var);
                            }
                            Console.WriteLine("*****");
                            Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                            Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                        }

                        listaTemporalDePalabrasBuscadas.Clear();
                        foreach (string var in palabrasIguales)
                        {
                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }

                            listaTemporalDePalabrasBuscadas.Add(var);
                        }
                        continue;
                    }
                    Console.WriteLine(infoGrafico[0] + "        rrrrrrrrr");
                    Series serie = DiagramaEstatico.Series.Add(infoGrafico[0]);
                    int    cantidadDeInsidenciasU = Int32.Parse(infoGrafico[2]);



                    serie.Points.Add(cantidadDeInsidenciasU);
                    palabrasIguales.Add(infoGrafico[0]);

                    Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                    Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                    listaTemporalDePalabrasBuscadas.Clear();


                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }

                    foreach (string var in palabrasIguales)
                    {
                        listaTemporalDePalabrasBuscadas.Add(var);
                    }
                    Console.WriteLine("*****");
                    Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                    Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                }

                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }

                dibujar(diagramaDinamico);
            }

            else if (formaParalela.Checked == true)
            {
                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }


                Paralelo llamar = new Paralelo();
                listaResultados.Items.Clear();
                textBoxContieneTiempoTotal.Clear();



                listaDeTodosLosResultadosParalelo.Clear();
                listaPalabrasImprimir.Clear();


                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }


                String   palabra       = palabraABuscar.Text;
                string[] variasPalabra = palabra.Split(';');

                ArrayList listaPalabras = new ArrayList();

                listaPalabras.Clear();
                foreach (string unaPalabra in variasPalabra)
                {
                    listaPalabras.Add(unaPalabra);
                }

                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }


                int cont = 0;

                foreach (String var in listaPalabras)
                {
                    Console.WriteLine(cont + "     " + var);
                    cont = cont + 1;
                }

                int cantidadPalabras = listaPalabras.Count;
                Console.WriteLine("cantidad palabras: " + cantidadPalabras);


                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }

                Console.WriteLine("cantidad elementos lista: " + listaPalabras.Count);



                ArrayList lista2 = global.retornarLista();

                Paralelo llamarFuncionParalela = new Paralelo();



                cronoTotal = Stopwatch.StartNew();

                if (cantidadPalabras > 4)
                {
                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }

                    recursivoLlamado(listaPalabras);
                }
                else
                {
                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }

                    llamadoDeFuncionMenosDe4(listaPalabras);
                }


                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }


                tiempoTotal = cronoTotal.ElapsedMilliseconds;

                imprimir(listaPalabrasImprimir);



                String tiempoImprimirComoString = tiempoTotal.ToString();
                textBoxContieneTiempoTotal.Clear();

                textBoxContieneTiempoTotal.AppendText(tiempoImprimirComoString);



                ArrayList palabrasIguales = new ArrayList();
                Console.WriteLine(Globales.imprimirInformacionGrafico.Count + "hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");

                valueCPUSecuencial = this.theCPUCounter.NextValue();
                if (valueCPUSecuencial != 0)
                {
                    global.agregarPuntos(valueCPUSecuencial);
                }

                foreach (String elemento in Globales.imprimirInformacionGrafico)
                {
                    Console.WriteLine(Globales.imprimirInformacionGrafico.Count + "hhhhhhhhhhhhhhhhhhhhhhhhhhhhhh");

                    Console.WriteLine(Globales.imprimirInformacionGrafico.Count + "ñññññññññññññññññññññññññññññññññññññññññññññññññññññññññññññ");
                    string[] infoGrafico = elemento.Split(';');



                    Console.WriteLine("infografico sub cero: " + infoGrafico[0]);
                    Console.WriteLine("infografico sub uno: " + infoGrafico[1]);
                    Console.WriteLine("infografico sub dos: " + infoGrafico[2]);

                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }


                    Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista");
                    if (palabrasIguales.Count != 0)
                    {
                        valueCPUSecuencial = this.theCPUCounter.NextValue();
                        if (valueCPUSecuencial != 0)
                        {
                            global.agregarPuntos(valueCPUSecuencial);
                        }

                        Console.WriteLine(palabrasIguales.Count + "   es el largo de palabrsas iguales");
                        int numero = 0;

                        int contadorAuxiliar = 0;



                        listaTemporalDePalabrasBuscadas.Clear();
                        foreach (string var in palabrasIguales)
                        {
                            listaTemporalDePalabrasBuscadas.Add(var);
                        }



                        while (numero < listaTemporalDePalabrasBuscadas.Count)
                        {
                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }


                            Console.WriteLine("contadorAuxiliar  ////////////////////" + contadorAuxiliar);
                            Console.WriteLine("2  ////////////////////" + Globales.imprimirInformacionGrafico.Count);
                            if (contadorAuxiliar == Globales.imprimirInformacionGrafico.Count - 1)
                            {
                                return;
                            }


                            Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                            Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                            Console.WriteLine(numero + " contador");
                            int contadorNombre = 1;

                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }

                            Console.WriteLine("arriba palabrasIguales[contadorAuxiliar]" + palabrasIguales[contadorAuxiliar]);
                            Console.WriteLine("arriba  infoGrafico[0])" + infoGrafico[0]);
                            if (listaTemporalDePalabrasBuscadas[contadorAuxiliar].Equals(infoGrafico[0]))
                            {
                                infoGrafico[0] = infoGrafico[0] + palabrasIguales.Count;


                                Console.WriteLine("con aumentar contador   infoGrafico[0])" + infoGrafico[0]);
                                Series serie2 = DiagramaEstatico.Series.Add(infoGrafico[0]);
                                int    cantidadDeInsidenciasU2 = Int32.Parse(infoGrafico[2]);


                                serie2.Points.Add(cantidadDeInsidenciasU2);
                                palabrasIguales.Add(infoGrafico[0]);

                                valueCPUSecuencial = this.theCPUCounter.NextValue();
                                if (valueCPUSecuencial != 0)
                                {
                                    global.agregarPuntos(valueCPUSecuencial);
                                }

                                Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                                Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                                contadorNombre   = contadorNombre + 1;
                                contadorAuxiliar = contadorAuxiliar + 1;
                                break;
                            }
                            contadorAuxiliar = contadorAuxiliar + 1;

                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }


                            numero = numero + 1;
                        }

                        if (listaTemporalDePalabrasBuscadas.Count == palabrasIguales.Count)
                        {
                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }

                            Console.WriteLine(infoGrafico[0] + "        rrrrrrrrr");
                            Console.WriteLine(infoGrafico[2] + "        rrrrrrrrr");
                            Series serie5 = DiagramaEstatico.Series.Add(infoGrafico[0]);
                            int    cantidadDeInsidenciasU5 = Int32.Parse(infoGrafico[2]);



                            serie5.Points.Add(cantidadDeInsidenciasU5);
                            palabrasIguales.Add(infoGrafico[0]);

                            Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                            Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                            listaTemporalDePalabrasBuscadas.Clear();
                            foreach (string var in palabrasIguales)
                            {
                                listaTemporalDePalabrasBuscadas.Add(var);
                            }
                            Console.WriteLine("*****");
                            Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                            Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                        }

                        listaTemporalDePalabrasBuscadas.Clear();
                        foreach (string var in palabrasIguales)
                        {
                            valueCPUSecuencial = this.theCPUCounter.NextValue();
                            if (valueCPUSecuencial != 0)
                            {
                                global.agregarPuntos(valueCPUSecuencial);
                            }

                            listaTemporalDePalabrasBuscadas.Add(var);
                        }
                        continue;
                    }
                    Console.WriteLine(infoGrafico[0] + "        rrrrrrrrr");
                    Series serie = DiagramaEstatico.Series.Add(infoGrafico[0]);
                    int    cantidadDeInsidenciasU = Int32.Parse(infoGrafico[2]);



                    serie.Points.Add(cantidadDeInsidenciasU);
                    palabrasIguales.Add(infoGrafico[0]);

                    Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                    Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                    listaTemporalDePalabrasBuscadas.Clear();


                    valueCPUSecuencial = this.theCPUCounter.NextValue();
                    if (valueCPUSecuencial != 0)
                    {
                        global.agregarPuntos(valueCPUSecuencial);
                    }

                    foreach (string var in palabrasIguales)
                    {
                        listaTemporalDePalabrasBuscadas.Add(var);
                    }
                    Console.WriteLine("*****");
                    Console.WriteLine(palabrasIguales.Count + " cantidad de largo lista  palabras iguales");
                    Console.WriteLine(listaTemporalDePalabrasBuscadas.Count + " cantidad de largo lista temporal");
                }



                dibujar(diagramaDinamico);
            }
        }
Beispiel #3
0
        public void recursivoLlamado(ArrayList listaPalabras)

        {
            listaDeTodasLasPalabras.Clear();

            foreach (String var in listaPalabras)
            {
                listaDeTodasLasPalabras.Add(var);
            }


            listaTemporal.Clear();
            listaTempora2.Clear();



            listaTemporal.Clear();
            Console.WriteLine("busqueda RECURSIVA");

            int cont = 0;

            Console.WriteLine("largo de lista palabras..............." + listaDeTodasLasPalabras.Count);

            foreach (string palabra in listaDeTodasLasPalabras)
            {
                if (cont > 3)
                {
                    listaTempora2.Add(palabra);
                }
                listaTemporal.Add(palabra);

                cont = cont + 1;
            }



            Console.WriteLine("aaaaaa2222: " + listaTempora2.Count);

            string palabraBuscar1 = "";
            string palabraBuscar2 = "";
            string palabraBuscar3 = "";
            string palabraBuscar4 = "";


            Globales  global = new Globales();
            ArrayList lista2 = global.retornarLista();

            Paralelo llamarFuncionParalela = new Paralelo();



            var process = System.Diagnostics.Process.GetCurrentProcess();

            process.ProcessorAffinity = new IntPtr(0x0009);



            int cont2 = 0;

            foreach (String var in listaTemporal)
            {
                if (cont2 == 0)
                {
                    palabraBuscar1 = var;
                }

                else if (cont2 == 1)
                {
                    palabraBuscar2 = var;
                }
                else if (cont2 == 2)
                {
                    palabraBuscar3 = var;
                }

                else if (cont2 == 3)
                {
                    palabraBuscar4 = var;
                }

                cont2 = cont2 + 1;
            }

            Parallel.Invoke(() =>
            {
                listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar1);
                agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
            },

                            () =>

            {
                listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar2);
                agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
            },

                            () =>

            {
                listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar3);
                agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
            },

                            () =>

            {
                listaDeTodosLosResultadosParalelo = llamarFuncionParalela.recorrerListaDeFormaParalela(lista2, palabraBuscar4);
                agregarElementoAListaimprimir(listaDeTodosLosResultadosParalelo);
            });

            Console.WriteLine("largo de lista temporal: " + listaTempora2.Count);

            int contP = 0;

            foreach (string var in listaDeTodasLasPalabras)
            {
                Console.WriteLine(contP + "  " + var);
                contP = contP + 1;
            }


            if (listaTempora2.Count > 4)
            {
                intermediario(listaTempora2);
            }
            else
            {
                llamadoDeFuncionMenosDe4(listaTempora2);
            }
        }