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(); } }
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]); } }