Esempio n. 1
0
 public Servidor(IDistribucion atencion, ICola cola, string nombre)
 {
     DistribucionAtencion = atencion;
     Cola              = cola;
     Nombre            = nombre;
     Estado            = "Libre";
     CantidadAtendidos = 0;
 }
Esempio n. 2
0
 public frmGraficoChiCuadrado(double[] numeros, IDistribucion distribucion)
 {
     InitializeComponent();
     this.numeros      = numeros;
     this.distribucion = distribucion;
     chrtDistribucion.Series.Add(Series2);
     chrtChi.Series.Add(Series3);
 }
Esempio n. 3
0
 public Servidor(IDistribucion atencion, ICola cola, string nombre, Boolean cont)
 {
     DistribucionAtencion = atencion;
     Cola              = cola;
     Nombre            = nombre;
     Estado            = "Libre";
     CantidadAtendidos = 0;
     bContinua         = cont;
 }
Esempio n. 4
0
 public ServidorDoble(IDistribucion atencion1, IDistribucion atencion2, ICola cola, string nombre)
 {
     Distribucion1     = atencion1;
     Distribucion2     = atencion2;
     Cola              = cola;
     Nombre            = nombre;
     Estado            = "Libre";
     CantidadAtendidos = 0;
 }
Esempio n. 5
0
 public Servidor(IDistribucion atencion, ICola cola, string nombre, Boolean cont, IDistribucion bloqueo, IDistribucion litros, IDistribucion distrK, int tipoCont)
 {
     DistribucionAtencion = atencion;
     Cola   = cola;
     Nombre = nombre;
     Estado = "Libre";
     DistribucionBloqueo = bloqueo;
     CantidadAtendidos   = 0;
     bContinua           = cont;
     DistribucionLitros  = litros;
     nTipoContinua       = tipoCont;
     DistribucionK       = distrK;
 }
Esempio n. 6
0
        public GestorEstadistico(IDistribucion distribucion, int tamañoMuestra, int cantidadIntervalos, double alfa)
        {
            Distribucion       = distribucion;
            TamañoMuestra      = tamañoMuestra;
            CantidadIntervalos = cantidadIntervalos;
            Alfa = alfa;

            CalcularValores();
            CalcularIntervalos();
            CalcularFrecuenciasObservadas();
            ObtenerFrecuenciasEsperadas();
            CalcularValoresChiCuadrado();
            ObtenerValorDeTablaChiCuadrado();
        }
Esempio n. 7
0
 public Llegada(IDistribucion distribucion, DateTime horaInicio, DateTime horaFin)
 {
     DistribucionLlegadas = distribucion;
     _horaInicio          = horaInicio;
     _horaFin             = horaFin;
 }
Esempio n. 8
0
        public void GenerarNumeros()
        {
            LimpiarTablas();

            if (radioButton3.Checked)
            {
                _generadorAleatorio = new GeneradorDelSistema();
            }

            else
            {
                var a       = int.Parse(txt_aA.Text);
                var m       = int.Parse(txt_mA.Text);
                var semilla = double.Parse(txt_semillaA.Text);

                //Congruencial Multiplicativo : Xn = (A * Xn-1 ) Mod M
                if (radioButton2.Checked)
                {
                    _generadorAleatorio = new CongruencialMultiplicativo(semilla, a, m);
                }

                //Congruencial Mixto : Xn = (A * Xn-1 + C ) Mod M
                else if (radioButton1.Checked)
                {
                    var c = int.Parse(txt_cA.Text);
                    _generadorAleatorio = new CongruencialMixto(semilla, a, c, m);
                }
            }

            if (rad_uniforme.Checked)
            {
                var a = double.Parse(txt_a.Text);
                var b = double.Parse(txt_b.Text);

                _distribucion = new DistribucionUniforme(a, b, _generadorAleatorio);
            }

            if (rad_normal.Checked)
            {
                var media    = double.Parse(txt_media.Text);
                var varianza = double.Parse(txt_varianza.Text);

                _distribucion = new DistribucionNormal(media, varianza, _generadorAleatorio);
            }

            if (rad_exponencial.Checked)
            {
                var lambda = double.Parse(txt_lambda.Text);

                _distribucion = new DistribucionExponencialNegativa(lambda, _generadorAleatorio);
            }

            var tamañoMuestra      = int.Parse(txt_cant_nroC.Text);
            var cantidadIntervalos = int.Parse(txt_IntC.Text);
            var alfa = double.Parse(txt_chicierto.Text);

            try
            {
                _gestor = new GestorEstadistico(_distribucion, tamañoMuestra, cantidadIntervalos, alfa);
            }
            catch (Exception)
            {
                var grados = int.Parse(txt_IntC.Text) - _distribucion.CantidadParametros() - 1;

                MessageBox.Show(grados <= 0
                    ? @"Grados de libertad insuficientes, utilice más intervalos"
                    : @"Falla la prueba de Chi Cuadrado porque las frecuencias esperadas tienden a cero, utilice menos intervalos");

                txt_mA.Focus();
                return;
            }

            for (var i = 0; i < tamañoMuestra; i++)
            {
                var valor = _gestor.Valores[i];

                dataGridView1.Rows.Add(i + 1, valor);
            }

            AgregarValoresTabla();
            CargarHistograma();
        }
Esempio n. 9
0
        public void GenerarNumeros()
        {
            dgvResultadosDistribucion.Rows.Clear();

            if (rbGSistema.Checked)
            {
                IGeneradorAleatorio = new GeneradorDelSistema();
            }

            else
            {
                var a       = int.Parse(txtMultiplicativoA.Text);
                var m       = int.Parse(txtDivisorM.Text);
                var semilla = float.Parse(txtSemillaA.Text);

                //Congruencial Multiplicativo : Xn = (A * Xn-1 ) Mod M
                if (rbGCMultiplicativo.Checked)
                {
                    IGeneradorAleatorio = new CongruencialMultiplicativo(semilla, a, m);
                }

                //Congruencial Mixto : Xn = (A * Xn-1 + C ) Mod M
                else if (rbGCMixto.Checked)
                {
                    var c = int.Parse(txtSumatorioC.Text);
                    IGeneradorAleatorio = new CongruencialMixto(semilla, a, c, m);
                }
            }

            if (rbDUniforme.Checked)
            {
                var a = float.Parse(txtMargenAU.Text);
                var b = float.Parse(txtMargenBU.Text);

                IDistribucion = new DistribucionUniforme(a, b, IGeneradorAleatorio);
            }

            if (rbDNormal.Checked)
            {
                var media    = float.Parse(txtMedia.Text);
                var varianza = float.Parse(txtVarianza.Text);

                IDistribucion = new DistribucionNormal(media, varianza, IGeneradorAleatorio);
            }

            if (rbDExponencial.Checked)
            {
                var lambda = float.Parse(txtLambda.Text);

                IDistribucion = new DistribucionExponencialNegativa(lambda, IGeneradorAleatorio);
            }
            //}

            //}

            var tamañoMuestra      = string.IsNullOrEmpty(txtCantNro.Text) ? 100 : int.Parse(txtCantNro.Text);
            var cantidadIntervalos = string.IsNullOrEmpty(txtIntervalos.Text) ? 100 : int.Parse(txtIntervalos.Text);

            var alfa = (float)0.5;

            try
            {
                gestor = new GestorEstadistico(IDistribucion, tamañoMuestra, cantidadIntervalos, alfa);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
                txtDivisorM.Focus();
                return;
            }
        }