示例#1
0
 public Simulacion(Bitmons bitmons, Mapa mapa, int filas, int columnas, int meses)
 {
     InitializeComponent();
     this.bitmons  = bitmons;
     this.mapa     = mapa;
     this.filas    = filas;
     this.columnas = columnas;
     this.meses    = meses;
 }
示例#2
0
        public double TiempoVidaPromedio(Bitmons bitmons)
        {
            double suma_tiempovida  = 0;
            double total_tiempovida = Convert.ToDouble(bitmons.bitmons_simulacion.Length);

            foreach (Bitmon bitmon in bitmons.bitmons_s)
            {
                suma_tiempovida += bitmon.TiempoVida;
            }
            return(suma_tiempovida / total_tiempovida);
        }
示例#3
0
        public List <double> TiempoVidaPromedio_especie(Bitmons bitmons)
        {
            List <double> tiempovidapromedioxespecie = new List <double>();

            foreach (Bitmon bitmon in bitmons.bitmons_s)
            {
                if (bitmon.especie == "Taplan")
                {
                    suma_tvida_taplan += bitmon.TiempoVida;
                    total_taplan      += 1;
                }
                if (bitmon.especie == "Wetar")
                {
                    suma_tvida_wetar += bitmon.TiempoVida;
                    total_wetar      += 1;
                }
                if (bitmon.especie == "Gofue")
                {
                    suma_tvida_gofue += bitmon.TiempoVida;
                    total_gofue      += 1;
                }
                if (bitmon.especie == "Dorvalo")
                {
                    suma_tvida_dorvalo += bitmon.TiempoVida;
                    total_dorvalo      += 1;
                }
                if (bitmon.especie == "Doti")
                {
                    suma_tvida_doti += bitmon.TiempoVida;
                    total_doti      += 1;
                }
                if (bitmon.especie == "Ent")
                {
                    suma_tvida_ent += bitmon.TiempoVida;
                    total_ent      += 1;
                }
                else
                {
                    continue;
                }
            }
            tiempovidapromedioxespecie.Add((suma_tvida_taplan / total_taplan));
            tiempovidapromedioxespecie.Add((suma_tvida_wetar / total_wetar));
            tiempovidapromedioxespecie.Add((suma_tvida_gofue / total_gofue));
            tiempovidapromedioxespecie.Add((suma_tvida_dorvalo / total_dorvalo));
            tiempovidapromedioxespecie.Add((suma_tvida_doti / total_doti));
            tiempovidapromedioxespecie.Add((suma_tvida_ent / total_ent));

            return(tiempovidapromedioxespecie);
        }
示例#4
0
 //para generar el mapa
 public void generarMapas(Mapa cMapa, Bitmons cBitmons)
 {
     for (int i = 0; i <= cMapa.Mterrenos.GetUpperBound(0); i++)
     {
         for (int j = 0; j <= cMapa.Mterrenos.GetUpperBound(1); j++)
         {
             Console.ForegroundColor = ConsoleColor.Black;
             string celda = "";
             foreach (Bitmon bitmon in cBitmons.bitmons_simulacion[i, j])
             {
                 celda += bitmon.especie[0].ToString() + bitmon.especie[1].ToString() + bitmon.especie[2].ToString();
             }
             while (celda.Count() <= 6)
             {
                 celda += " ";
             }
             celda = celda.Insert(3, ",");
             if (cMapa.Mterrenos[i, j].tipo == "Desierto")
             {
                 Console.BackgroundColor = ConsoleColor.Yellow;
                 Console.Write(celda);
             }
             else if (cMapa.Mterrenos[i, j].tipo == "Vegetacion")
             {
                 Console.BackgroundColor = ConsoleColor.Green;
                 Console.Write(celda);
             }
             else if (cMapa.Mterrenos[i, j].tipo == "Acuatico")
             {
                 Console.BackgroundColor = ConsoleColor.Blue;
                 Console.Write(celda);
             }
             else if (cMapa.Mterrenos[i, j].tipo == "Nieve")
             {
                 Console.BackgroundColor = ConsoleColor.White;
                 Console.Write(celda);
             }
             else if (cMapa.Mterrenos[i, j].tipo == "Volcan")
             {
                 Console.BackgroundColor = ConsoleColor.Red;
                 Console.Write(celda);
             }
         }
         Console.Write("\n");
     }
     Console.BackgroundColor = ConsoleColor.Black;
     Console.ForegroundColor = ConsoleColor.White;
 }
示例#5
0
        public List <double> TasaMortalidad_especie(Bitmons bitmons)
        {
            List <double> tasamortalidadxespecie = new List <double>();

            total_bithalla = Convert.ToDouble(bitmons.bithalla.Count());
            foreach (Bitmon bitmon in bitmons.bithalla)
            {
                if (bitmon.especie == "Taplan")
                {
                    muertos_taplan += 1;
                }
                if (bitmon.especie == "Wetar")
                {
                    muertos_wetar += 1;
                }
                if (bitmon.especie == "Gofue")
                {
                    muertos_gofue += 1;
                }
                if (bitmon.especie == "Dorvalo")
                {
                    muertos_dorvalo += 1;
                }
                if (bitmon.especie == "Doti")
                {
                    muertos_doti += 1;
                }
                if (bitmon.especie == "Ent")
                {
                    muertos_ent += 1;
                }
                else
                {
                    continue;
                }
            }
            tasamortalidadxespecie.Add((muertos_taplan / total_bithalla) * 100);
            tasamortalidadxespecie.Add((muertos_wetar / total_bithalla) * 100);
            tasamortalidadxespecie.Add((muertos_gofue / total_bithalla) * 100);
            tasamortalidadxespecie.Add((muertos_dorvalo / total_bithalla) * 100);
            tasamortalidadxespecie.Add((muertos_doti / total_bithalla) * 100);
            tasamortalidadxespecie.Add((muertos_ent / total_bithalla) * 100);

            return(tasamortalidadxespecie);
        }
示例#6
0
 //Para cada bitmon, revisa si se encuentra en un terreno que le haga daño
 public void Entorno(Mapa cMapa, Bitmons cBitmons)
 {
     for (int i = 0; i < cMapa.Mterrenos.GetUpperBound(0); i++)
     {
         for (int j = 0; j < cMapa.Mterrenos.GetUpperBound(1); j++)
         {
             foreach (Bitmon bitmon in cBitmons.bitmons_simulacion[i, j])
             {
                 string t = cMapa.Mterrenos[i, j].getTerreno();
                 if (bitmon.debilidad.Contains(t) && bitmon.especie == "")
                 {
                     bitmon.TiempoVida -= 2;
                 }
                 else
                 {
                     bitmon.TiempoVida -= 1;
                 }
             }
         }
     }
 }
示例#7
0
 public Resultados(Bitmons bitmons)
 {
     InitializeComponent();
     this.bitmons = bitmons;
 }
示例#8
0
        public List <double> TasaNatalidad_especie(Bitmons bitmons)
        {
            List <double> tasanatalidadxespecie = new List <double>();
            double        total = Convert.ToDouble(bitmons.bitmons_simulacion.Length);

            foreach (Bitmon bitmon in bitmons.bitmons_s)
            {
                if (bitmon.especie == "Taplan")
                {
                    if (bitmon.Hijos != 0)
                    {
                        hijos_taplan += Convert.ToDouble(bitmon.Hijos);
                    }
                }
                if (bitmon.especie == "Wetar")
                {
                    if (bitmon.Hijos != 0)
                    {
                        hijos_wetar += Convert.ToDouble(bitmon.Hijos);
                    }
                }
                if (bitmon.especie == "Gofue")
                {
                    if (bitmon.Hijos != 0)
                    {
                        hijos_gofue += Convert.ToDouble(bitmon.Hijos);
                    }
                }
                if (bitmon.especie == "Dorvalo")
                {
                    if (bitmon.Hijos != 0)
                    {
                        hijos_dorvalo += Convert.ToDouble(bitmon.Hijos);
                    }
                }
                if (bitmon.especie == "Doti")
                {
                    if (bitmon.Hijos != 0)
                    {
                        hijos_doti += Convert.ToDouble(bitmon.Hijos);
                    }
                }
                if (bitmon.especie == "Ent")
                {
                    if (bitmon.Hijos != 0)
                    {
                        hijos_ent += Convert.ToDouble(bitmon.Hijos);
                    }
                }
                else
                {
                    continue;
                }
            }
            tasanatalidadxespecie.Add((hijos_taplan / total) * 100);
            tasanatalidadxespecie.Add((hijos_wetar / total) * 100);
            tasanatalidadxespecie.Add((hijos_gofue / total) * 100);
            tasanatalidadxespecie.Add((hijos_dorvalo / total) * 100);
            tasanatalidadxespecie.Add((hijos_doti / total) * 100);
            tasanatalidadxespecie.Add((hijos_ent / total) * 100);
            return(tasanatalidadxespecie);
        }