예제 #1
0
        private static void Inicializar()
        {
            Modelo.Crear("Simulador de Mediana Empresa", 1);
            ExpInf.Usotabla = Tabla.UsoTabla.Reloj;
            double[]          param = { ProductividadMedia, VariacionProdMedia };
            GVA.Distribucion  d     = GVA.Distribucion.Normal;
            GVA.TipoGenerador t     = GVA.TipoGenerador.MarsagliaMWC;
            GVA VAProductividad     = new GVA(d, param, t, 1);

            Inventario.EstablecerValorInicial(InventarioInicial);
            Inventario.UpdateFn       = () => Funciones.MAX(0, (Inventario.j + (Produccion.k - UnidadesVendidas.k) * Reloj.DT));
            Produccion.UpdateFn       = () => (VAProductividad.Generar());
            Demanda.UpdateFn          = () => (PromedioVtasMensuales * (PorcIncVend * CantVendedores) - (ExpInf.k) / 100f * FactorAfecInf * PromedioVtasMensuales);
            UnidadesVendidas.UpdateFn = () => Funciones.MIN(Demanda.k, Inventario.k);                                  //Unidades
            Ventas.UpdateFn           = () => (Precio * UnidadesVendidas.k);                                           //$
            CostoSalarios.UpdateFn    = () => (CantVendedores * SalarioPromedio);                                      //$
            GananciasNetas.UpdateFn   = () => (Ventas.k - (Ventas.k * PorcImpuestos));                                 //$
            CostosInventario.UpdateFn = () => (CostoInvPorUnidadAlmacenada * Inventario.k);                            //$
            CostosTotales.UpdateFn    = () => (CostoSalarios.k + CostosInventario.k);                                  //$
            Dinero.EstablecerValorInicial(DineroInicial);
            Dinero.UpdateFn = () => (Dinero.j + (GananciasNetas.k - CostoSalarios.k - CostosInventario.k) * Reloj.DT); //$
        }