Simulacion Cola de Un Banco
Simulacion Cola de Un Banco
Simulacion Cola de Un Banco
donde los nodos de la lista con la que se implanta contiene el nombre del usuario,
el valor de la operación y el nombre de la operación.
Suponga que la cola para el cajero del banco solo puede contener a 15 personas.
Además considere que la probabilidad de entrada o llegada de un cliente es del
30% y la atención es del 60% (10% cajero sin actividad) de modo que a lo largo
del tiempo el programa agregue o elimine un nuevo cliente generando al azar la
operación a realizar. Imprima en todo momento el nombre del cliente del frente y
su operación y el nombre del cliente final.
Simulación
Se creará un programa que simule el proceso una cola de banco de N clientes, para obtener
información estadística.
Tipos de cuenta :
class ClienteBanco
{
int servicio;
int tipoCuenta;
int tiempoMax;
int tiempoEspera;
int tiempoServicio;
}
Propiedades de la simulación
Estadísticas
class Estadistica
{
public Estadistica(int numRequerimientos, int numTiposCuenta);
*nota : esta clase consta de seis atributos privados , un constructor, tres métodos públicos y
seis métodos privados.
Ejemplo
estad.informe(strReq,strCuenta);
Se creo una clase que manejara internamente una estructura de tipo Cola y un objeto
Estadistica, proporcionando sólo, los métodos naturales para realizar la simulación desde
un programa de prueba.
class Simulacion
{
public final static int NUM_REQUERIMIENTOS = 5;
public final static int NUM_TIPOS_CUENTA = 3;
public static int TIEMPO_MAX_PROM = 1550;
public static int DESV_TMAX= 205;
public static int TIEMPO_SERV_PROM = 97;
public static int DESV_TSERV = 15;
public static double TASA_LLEGADA = (7.0 / 3.0);
public Simulacion( );
*nota : esta clase consta de cuatro atributos privados ,siete atributos públicos y estáticos ,
un constructor, cinco métodos públicos y cinco métodos privados.
bajar implementación
NUM_REQUERIMIENTOS : número de operaciones o requerimientos.
Programa de prueba
Este programa consiste en realizar una sumulación con los siguientes datos ingresados por
teclado :
Código fuente
import java.io.*;
class ProgSimulacion
{
public static void main(String arg[ ])
{
int cont = 0;
int cte_esp = 0;
try
{
System.out.print("\n\tIngrese clientes iniciales : ");
int cte_ini = Integer.parseInt(in.readLine( ) );
do
{
simul.llegaCliente( );
cont++;
} while(cont < cte_ini);
try
{
System.out.print("\n\tIngrese clientes esperados : ");
cte_esp = Integer.parseInt(in.readLine( ) );
}
catch(Exception e)
{
cte_esp = 200;
System.out.println("\tPor error de entrada, se usara el valor
200");
}
while (!simul.ColaVacia( ) )
{
simul.atenderCliente( );
}
System.out.println( );
simul.informe( );
System.out.println( );
}