Ejemplo n.º 1
0
        private void Cliente(Persona persona, string abre, double rnd_Abre, double rnd_cliente, int desde, int hasta, int fila, int[] arreglo, int iteracion, int[] contador)//***********El contador************
        {
            double rnd_compra      = 0;
            double rnd_suscripcion = 0;
            int    cont            = 0; //***********El contador************


            if (abre == "Abre")
            {
                rnd_compra = random.NextDouble();

                if (rnd_compra <= persona.probCompra)
                {
                    persona.venta = "Compra";

                    rnd_suscripcion = random.NextDouble();
                    cont            = cont + 1; //***********El contador************
                    //*************************
                    //para contar cuantos abren
                    if (fila == 0)
                    {
                        contador[0] = cont;
                        contador[1] = cont;
                    }
                    else
                    {
                        contador[0] = contador[0] + cont;
                        if (cont > 0)
                        {
                            contador[1] = cont;
                        }
                    }
                    //hasta aca*****************



                    if (rnd_suscripcion < persona.numSuscrip1)
                    {
                        persona.suscripcion = 1;
                    }
                    else
                    {
                        if (rnd_suscripcion < persona.numSuscrip2)
                        {
                            persona.suscripcion = 2;
                        }
                        else
                        {
                            if (rnd_suscripcion < persona.numSuscrip3)
                            {
                                persona.suscripcion = 3;
                            }
                            else
                            {
                                persona.suscripcion = 4;
                            }
                        }
                    }
                }



                else
                {
                    persona.venta = "No compra";
                }
            }


            int nuevo = persona.suscripcion * 2;

            //arreglo[fila] = arreglo[fila - 1] + nuevo;

            if (fila == 0)
            {
                arreglo[0] = nuevo;
                arreglo[1] = nuevo;
            }
            else
            {
                arreglo[0] = arreglo[0] + nuevo;
                if (nuevo > 0)
                {
                    arreglo[1] = nuevo;
                }
            }



            if (fila >= desde && fila <= hasta)
            {
                //******* Aca agregue el ultimo parametro: Decimales.truncarA4Decimales(contador [0]

                dgv_datos.Rows.Add(fila, Decimales.truncarA4Decimales(rnd_Abre), abre, Decimales.truncarA4Decimales(rnd_cliente), persona.genero, Decimales.truncarA4Decimales(rnd_compra), persona.venta, Decimales.truncarA4Decimales(rnd_suscripcion), persona.suscripcion, nuevo, arreglo[0], Decimales.truncarA4Decimales(contador[0]));
            }
            if (fila == iteracion)
            {
                //******* Aca agregue el ultimo parametro: Decimales.truncarA4Decimales(contador [0]
                dgv_datos.Rows.Add(fila, Decimales.truncarA4Decimales(rnd_Abre), abre, Decimales.truncarA4Decimales(rnd_cliente), persona.genero, Decimales.truncarA4Decimales(rnd_compra), persona.venta, Decimales.truncarA4Decimales(rnd_suscripcion), persona.suscripcion, nuevo, arreglo[0], Decimales.truncarA4Decimales(contador[0]));
                //***********Esto para calcular y mostrar la prob
                double prob = Decimales.truncarA4Decimales(contador[0]) / iteracion;
                lblProb.Visible = true;
                lblProb.Text    = prob.ToString();
            }
        }
Ejemplo n.º 2
0
        private void Cliente(Persona persona, string abre, double rnd_Abre, double rnd_cliente, int desde, int hasta, int fila, int[] arreglo)
        {
            double rnd_compra      = 0;
            double rnd_suscripcion = 0;


            if (abre == "Abre")
            {
                rnd_compra = random.NextDouble();

                if (rnd_compra <= persona.probCompra)
                {
                    persona.venta   = "Compra";
                    rnd_suscripcion = random.NextDouble();

                    if (rnd_suscripcion < persona.numSuscrip1)
                    {
                        persona.suscripcion = 1;
                    }
                    else
                    {
                        if (rnd_suscripcion < persona.numSuscrip2)
                        {
                            persona.suscripcion = 2;
                        }
                        else
                        {
                            if (rnd_suscripcion < persona.numSuscrip3)
                            {
                                persona.suscripcion = 3;
                            }
                            else
                            {
                                persona.suscripcion = 4;
                            }
                        }
                    }
                }
                else
                {
                    persona.venta = "No compra";
                }
            }


            int nuevo = persona.suscripcion * 2;

            //arreglo[fila] = arreglo[fila - 1] + nuevo;

            if (fila == 0)
            {
                arreglo[0] = nuevo;
                arreglo[1] = nuevo;
            }
            else
            {
                arreglo[0] = arreglo[0] + nuevo;
                if (nuevo > 0)
                {
                    arreglo[1] = nuevo;
                }
            }

            if (fila >= desde && fila <= hasta)
            {
                dgv_datos.Rows.Add(fila, Decimales.truncarA4Decimales(rnd_Abre), abre, Decimales.truncarA4Decimales(rnd_cliente), persona.genero, Decimales.truncarA4Decimales(rnd_compra), persona.venta, Decimales.truncarA4Decimales(rnd_suscripcion), persona.suscripcion, nuevo, arreglo[0]);
            }
        }