예제 #1
0
        public nodotop buscarlistatop10(string nicknamee)
        {
            if (inicio == null)
            {
                return(null);
            }
            else
            {
                nodotop auxiliar = inicio;
                while (auxiliar != null)
                {
                    if (auxiliar.Nickname == nicknamee)
                    {
                        return(auxiliar);
                    }

                    auxiliar = auxiliar.Siguiente;
                }
                return(null);
            }
        }
예제 #2
0
        public void insertaralfinal(string nick, int juegos)
        {
            nodotop nuevo = new nodotop(nick, juegos);

            if (inicio == null)
            {
                inicio = nuevo;
            }
            else
            {
                nodotop auxiliar = inicio;
                while (auxiliar != null)
                {
                    if (auxiliar.Siguiente == null)
                    {
                        auxiliar.Siguiente = nuevo;
                        nuevo.Anterior     = auxiliar;
                        break;
                    }
                    auxiliar = auxiliar.Siguiente;
                }
            }
        }
예제 #3
0
        public void ordenar()
        {
            if (inicio == null)
            {
                return;
            }
            else
            {
                nodotop auxuno = inicio;
                nodotop auxdos = inicio;
                while (auxuno != null)
                {
                    if (auxuno.Siguiente != null)
                    {
                        auxdos = auxdos.Siguiente;
                        while (auxdos != null)
                        {
                            if (auxuno.JuegosGanados < auxdos.JuegosGanados)
                            {
                                int    auxjuegos   = auxuno.JuegosGanados;
                                string auxnickname = auxuno.Nickname;

                                auxuno.JuegosGanados = auxdos.JuegosGanados;
                                auxuno.Nickname      = auxdos.Nickname;

                                auxdos.JuegosGanados = auxjuegos;
                                auxdos.Nickname      = auxnickname;
                            }
                            auxdos = auxdos.Siguiente;
                        }
                    }
                    auxuno = auxuno.Siguiente;
                    auxdos = auxuno;
                }
            }
        }
예제 #4
0
        public void mostrar()
        {
            int          contaaux  = 1;
            int          contaaux2 = 2;
            nodotop      aux       = inicio;
            StreamWriter grafo2    = new StreamWriter("C:\\Users\\Admin\\Documents\\Visual Studio 2015\\Projects\\servidorproyecto\\top10.txt");

            grafo2.WriteLine("digraph G{");
            while (aux.Siguiente != null)
            {
                grafo2.WriteLine("\"" + contaaux + aux.Nickname + "," + aux.JuegosGanados + "\"->\"" + contaaux2 + aux.Siguiente.Nickname + "," + aux.Siguiente.JuegosGanados + "\"");
                grafo2.WriteLine("\"" + contaaux2 + aux.Siguiente.Nickname + "," + aux.Siguiente.JuegosGanados + "\"->\"" + contaaux + aux.Nickname + "," + aux.JuegosGanados + "\"");
                contaaux++;
                contaaux2++;
                aux = aux.Siguiente;
            }
            grafo2.WriteLine("}");

            grafo2.Close();

            try
            {
                using (var dot = new Process())
                {
                    // dot.StartInfo.Verb = "runas"; // Run process as admin.
                    dot.StartInfo.FileName         = @"C:\Program Files (x86)\Graphviz2.38\bin\dot.exe";
                    dot.StartInfo.WorkingDirectory = @"C:/Users/Admin/Documents/Visual Studio 2015/Projects/servidorproyecto";
                    dot.StartInfo.Arguments        = "-Tpng  top10.txt -o top10.png ";
                    dot.Start();
                    dot.WaitForExit();
                }
            }
            catch (Exception e)
            {
            }
        }
예제 #5
0
        } //fin csvcargar usuarios

        public void csvcargarlistausuarios()
        {
            int auxinicio = 0;

            List <string[]> parsedData = new List <string[]>();

            using (StreamReader readFile = new StreamReader("C:\\Users\\Admin\\Documents\\Visual Studio 2015\\Projects\\servidorproyecto\\juegos.csv"))
            {
                string   line;
                string[] row;

                while ((line = readFile.ReadLine()) != null)
                {
                    if (auxinicio == 0)
                    {
                        row = line.Split(',');

                        parsedData.Add(row);
                        // insertar(row[0]);
                        auxinicio = 2;
                    }
                    else
                    {
                        row = line.Split(',');
                        Console.WriteLine(row);
                        parsedData.Add(row);
                        insertarlistausuario(row[0], row[1], row[2], row[3], row[4], Convert.ToInt32(row[5]));

                        nodotop          aux          = ltop10.buscarlistatop10(row[0]);
                        nodotopdestruido auxdestruido = ltop10p.buscarlistatop(row[0]);

                        if (aux != null)//quiere decir que si lo encontro
                        {
                            aux.JuegosGanados = aux.JuegosGanados + 1;
                        }
                        else if (aux == null)
                        {
                            //se inserta
                            if (Convert.ToInt32(row[5]) == 1)  //1 gano, 0 perdio
                            {
                                ltop10.insertaralfinal(row[0], Convert.ToInt32(row[5]));
                            }
                            else
                            {
                                ltop10.insertaralfinal(row[0], 0);
                            }
                        }
                        //fin top 10 de jugadores con mas partidasd ganadas

                        //**************************para encontrar top 10 de unidades destruidas******
                        if (auxdestruido != null)//quiere decir que si lo encontro
                        {
                            auxdestruido.UniPerdidas = auxdestruido.UniPerdidas + Convert.ToInt32(row[4]);
                        }
                        else if (auxdestruido == null)
                        {
                            //se inserta

                            ltop10p.insertaralfinal(row[0], Convert.ToInt32(row[4]));
                        }
                    }
                }
                ltop10.ordenar();
                ltop10.mostrar();
                ltop10p.ordenar();
                ltop10p.mostrar();
            }
        } //fin csvcargar usuarios