Esempio n. 1
0
        public void apagarIncendio(ILugar lugar, Calle calle)
        {
            Console.WriteLine("Un bombero esta apagando el incendio con el metodo Escalera en la " + lugar.ToString() + "\n");

            Console.WriteLine("\nEl fuego de la " + lugar.ToString() + " fue extinguido en su totalidad!!");

            //Algoritmo Escalera
        }
        public void apagarIncendio(ILugar lugar, Calle calle)
        {
            ISector [][] sectores = lugar.getSectores();
            int          longitud = sectores.GetLength(0);
            int          caudal   = calle.getCaudal();

            Console.WriteLine("Un bombero esta apagando el incendio con el metodo Secuencial en la " + lugar.ToString() + "\n");
            Console.WriteLine("Matriz de sectores de la " + lugar.ToString() + " (" + longitud + "x" + longitud + "):");

            for (int i = 0; i < longitud; i++)
            {
                for (int j = 0; j < longitud; j++)
                {
                    var fuegoRestante = new List <double>();                    //Lista que va a ir añadiendo valores del caudal a medida que se va apagando el fuego.

                    fuegoRestante.Add(sectores[i][j].getAfeccion());

                    while (!sectores[i][j].estaApagado())
                    {
                        sectores[i][j].mojar(caudal);

                        if (sectores[i][j].estaApagado())
                        {
                            fuegoRestante.Add(0);             //Se añade 0 en caso de que el caudal sea menor o igual a 0.
                        }
                        else
                        {
                            fuegoRestante.Add(sectores[i][j].getAfeccion());
                        }
                    }

                    Console.WriteLine("(" + i + "," + j + ") - " + "(" + sectores[i][j].ToString() + ") -> " + string.Join(" -> ", fuegoRestante));
                }
            }
            Console.WriteLine("\nEl fuego de " + lugar.ToString() + " fue extinguido en su totalidad!!");
        }
Esempio n. 3
0
        public void apagarIncendio(ILugar lugar, int caudal)
        {
            Console.WriteLine("Apagando el incendio con la estrategia escalera en " + lugar.ToString());

            ISector [][] sectores = lugar.getSectores();

            int fin       = sectores.Length - 1;
            int cont      = 0;
            int indicador = 0;

            while (cont <= fin)
            {
                switch (indicador)
                {
                case 0:
                    for (int i = 0; i <= fin; i++)
                    {
                        Console.Write("({0},{1})", cont, i);
                        Console.Write(sectores[cont][i]);

                        sectores[cont][i].mojar(caudal);
                    }

                    indicador = 1;
                    break;

                case 1:
                    for (int j = fin; j >= 0; j--)
                    {
                        Console.Write("({0},{1})", cont, j);
                        Console.Write(sectores[cont][j]);

                        sectores[cont][j].mojar(caudal);
                    }
                    indicador = 0;
                    break;
                }

                Console.WriteLine();

                cont++;
            }

            Console.WriteLine("!!!!!El fuego de " + lugar.ToString() + " fue extinguido en su totalidad¡¡¡¡¡¡");
        }
        public void apagarIncendio(ILugar lugar, int caudal)
        {
            Console.WriteLine("Apagando el incendio con la estrategia espiral");
            ISector [][] sectores = lugar.getSectores();

            int fin         = sectores.GetLength(0) - 1;
            int iteraciones = sectores.GetLength(0) * 4;
            int inicio      = 0;

            for (int j = 0; j < sectores.Length; j++)
            {
                for (int i = inicio; i <= fin; i++)
                {
                    Console.Write("({0},{1})", inicio, i);
                    Console.Write(sectores[inicio][i]);

                    sectores[inicio][i].mojar(caudal);
                }
                for (int i = inicio + 1; i <= fin; i++)
                {
                    Console.Write("({0},{1})", i, fin);
                    Console.Write(sectores[i][fin]);
                    sectores[i][fin].mojar(caudal);
                }
                for (int i = fin - 1; i >= inicio; i--)
                {
                    Console.Write("({0},{1})", fin, i);
                    Console.Write(sectores[fin][i]);
                    sectores[fin][i].mojar(caudal);
                }

                for (int i = fin - 1; i > inicio; i--)
                {
                    Console.Write("({0},{1})", i, inicio);
                    Console.Write(sectores[i][inicio]);
                    sectores[i][inicio].mojar(caudal);
                }

                inicio++;
                fin--;
            }

            Console.WriteLine("El fuego de" + lugar.ToString() + " fue extinguido en su totalidad");
        }
Esempio n. 5
0
        public void apagarIncendio(ILugar lugar, int caudal)
        {
            Console.WriteLine("Apagando el incendio con la estrategia secuencial en " + lugar.ToString());

            ISector [][] sectores = lugar.getSectores();

            int tamaño = sectores.GetLength(0);


            for (int i = 0; i < tamaño; i++)
            {
                for (int j = 0; j < tamaño; j++)
                {
                    Console.Write("({0},{1})", i, j);
                    Console.Write(" -- ({0})", sectores[i][j].ToString());
                    sectores[i][j].mojar(caudal);
                }
            }
            Console.WriteLine("!!!!!El fuego de " + lugar.ToString() + " fue extinguido en su totalidad¡¡¡¡¡¡");
        }
Esempio n. 6
0
        public void ApagarIncendio(ILugar l, Calle c)
        {
            Sector[][] mapa = l.GetSectores();
            int        N    = mapa.Length;

            for (int x = 0; x < N; x++)
            {
                for (int y = 0; y < N; y++)
                {
                    Sector actual = mapa[x][y];
                    Console.Write("({0},{1})", x + 1, y + 1);

                    while (!actual.estaApagado())
                    {
                        //mapa[x][y] = new Sector((mapa[x][y].afectacionDelFuego - c.CantidadDeCaudalPorMinuto).afectacionDelFuego >= 0 ? (mapa[x][y].afectacionDelFuego - c.CantidadDeCaudalPorMinuto) : 0);
                        Console.Write("->" + actual.afectacionDelFuego);
                        mapa[x][y] = new Sector(mapa[x][y].afectacionDelFuego - c.CantidadDeCaudalPorMinuto);
                        actual     = mapa[x][y];
                    }
                    Console.WriteLine("");
                }
            }

            Console.WriteLine("¡¡¡¡¡¡¡ El fuego de {0} fue extinguido en su totalidad !!!!!!", l.ToString());
        }