Simulador de sistema de inventario

11
SIMULACIÓN DE UN SISTEMA DE INVENTARIOS SOSA MEJIA ANEL VERONICA 15 DE DICIEMBRE DE 2016 ITSP ENRIQUE PONCE RIVERA

Transcript of Simulador de sistema de inventario

Page 1: Simulador de sistema de inventario

SIMULACIÓN DE UN SISTEMA DE INVENTARIOS

SOSA MEJIA ANEL VERONICA

15 DE DICIEMBRE DE 2016 ITSP

ENRIQUE PONCE RIVERA

Page 2: Simulador de sistema de inventario

import java.util.Scanner;

public class proyecto{

public static void main(String[]args)

{

Scanner br=new Scanner(System.in);

int demanda[]=new int[20];

double ProDemanda[]=new double [9];

double ProEntrega[]=new double[4];

double RDemanda[]=new double[9];

double RTiempo[]=new double[4];

{System.out.println("Escribe la probabilidad: ");

for(int i=0;i<ProDemanda.length;i++)

ProDemanda[i]=Double.parseDouble(br.nextLine());}

System.out.println();

System.out.println("Tiempo: ");

System.out.println("Escribe la probabilidad: ");

for(int c=0;c<ProEntrega.length;c++)

{

double prob=Double.parseDouble(br.nextLine());

ProEntrega[c]=prob;

}

Page 3: Simulador de sistema de inventario

System.out.println("Demanda"+"\t"+"\t"+"Probabilidad");

for(int x=0;x<ProDemanda.length;x++)

{System.out.println(x+"\t"+"\t"+ProDemanda[x]);}

System.out.println();

System.out.println();

System.out.println("Tiempo"+"\t"+"\t"+"Probabilidad");

for(int x1=0;x1<ProEntrega.length;x1++)

{System.out.println(x1+1+"\t"+"\t"+ProEntrega[x1]);}

System.out.println("Días a Simular: ");

int dias=br.nextInt();

System.out.println("Inventario Inicial : ");

int InvInicial=br.nextInt();

System.out.println("Punto de Reorden: ");

double PR=br.nextDouble();

System.out.println("Cantidad a Ordenar: ");

int Co=br.nextInt();

for(int i=0; i<RDemanda.length; i++)

{

Page 4: Simulador de sistema de inventario

if(i==0)

RDemanda[0]=0;

else{

RDemanda[i]=RDemanda[i-1]+ProDemanda[i-1];

}

}

for (int i = 0; i < RTiempo.length; i++) {

if(i==0)

RTiempo[0]=0;

else{

RTiempo[i]=RTiempo[i-1]+ProEntrega[i-1];

}

}

double a=5,c=7,x1=10;

int m=32;

double nl[]=new double [dias];

double xn1;

double div;

boolean si=false;

int Sumador=0;

int Sumador2=0;

System.out.println(" ");

Page 5: Simulador de sistema de inventario

System.out.println("Día"+"\t"+"Aleatorio"+"\t"+"Demanda"+"\t"+"\t"+"Inv.I"+"\t"+"\t"+"I

nv.F"+"\t"+

"\t"+"Faltate"+"\t"+"\t"+"Orden"+"\t"+"\t"+"Aleatorios"+"\t"+"Dias.Entr."+"\t"+"Llegada"

);

for(int x=0;x<dias;x++){

xn1=((a*x1)+c )% m ;

div=xn1/m;

nl[x]=div;

x1=xn1;

for(int i=0;i<x;i++){

if(xn1==nl[i]){si=true;}

}if(si==true)break;

}

double a2=3,c2=6,x2=10;

int m2=32;

double nl2[]=new double [ dias];

double xn2;

double div2;

boolean si2=false;

Page 6: Simulador de sistema de inventario

for(int p=0;p<dias;p++){

xn2=((a2*x2)+c2 )% m2 ;

div2=xn2/m2;

nl2[p]=div2;

x2=xn2;

for(int i=0;i<p;i++){

if(xn2==nl2[i]){si2=true;}

}if(si2==true)break;

}

for(int g=0;g<dias;g++)

{

for(int i=0; i<RDemanda.length-1;i++)

{

if(RDemanda[i]<nl[g] & nl[g]<RDemanda[i+1])

{

demanda[g]=i;

break;

}

}

}

int Tiemp[]=new int[20];

Page 7: Simulador de sistema de inventario

for(int g=0;g<dias;g++)

{

for(int i=0; i<RTiempo.length-1;i++)

{

if(RTiempo[i]<nl2[g] & nl2[g]<RTiempo[i+1])

{

Tiemp[g]=i+1;

break;

}

}

}

int InFinal=0;

int Falt=0;

boolean bandera=false;

int auxTiempo=0;

int cont=0;

String Orden="n";

int Sum=0;

int contador=0;

for(int d=0;d<dias;d++)

{

}

Page 8: Simulador de sistema de inventario

int valorDia=0;

for(int z=0;z<dias;z++)

{

InFinal=InvInicial-demanda[z];

if(InFinal<=PR){

if(bandera!=true)

{

bandera=true;

auxTiempo=Tiemp[cont];

Orden="S"+"\t"+"\t"+nl2[auxTiempo-

1]+"\t"+"\t"+auxTiempo+"\t"+"\t"+Co;

cont++;

valorDia=z+auxTiempo;

contador++;

}

else

Orden="N";

}

if(valorDia==z&bandera==true)

{

InvInicial=InvInicial+Co;

Page 9: Simulador de sistema de inventario

InFinal=InvInicial-demanda[z];

bandera=false;

}

if(InFinal<=0)

{

Falt=-1*InFinal;

InFinal=0;

Sumador2=Falt+Sumador2;

}

if(InFinal>0)

{

Falt=0;

}

if(InFinal<=PR){

if(bandera!=true)

{

bandera=true;

auxTiempo=Tiemp[cont];

Orden="S"+"\t"+"\t"+nl2[auxTiempo-

1]+"\t"+"\t"+auxTiempo+"\t"+"\t"+Co;

cont++;

contador++;

valorDia=z+auxTiempo;

}

}

Page 10: Simulador de sistema de inventario

Sumador=InFinal+Sumador;

System.out.println(z+1+"\t"+nl[z]+"\t"+"\t"+demanda[z]+"\t"+"\t"+InvInicial+"\t"+"\t"+InF

inal+"\t"+"\t"+Falt+"\t"+"\t"+Orden);

InvInicial=InFinal;

Orden="N";

}

double Sumademanda=0;

for(int e=0;e<dias;e++)

{

Sumademanda=Sumademanda+demanda[e]/(double)dias;

}

double Total=(double)Sumador/(double)dias;

int Total2=Sumador2;

System.out.println();

System.out.println("Promedio Demanda="+Sumademanda+"\t"+"Promedio Inv.Final:

"+Total+"\t"+"\t"+"TotaL Faltantes: "+Sumador2+"\t"+"\t"+"Total a Ordenar: "+cont);

}}

Page 11: Simulador de sistema de inventario