Ejemplo n.º 1
0
void constructorMesa(Mesas &mesa, int id, int prov, Cola urna)
{
     mesa.id = id;
     mesa.provincia = prov;
     crearCola(urna);
     mesa.urnas = urna;
}
Ejemplo n.º 2
0
int main()
{
    int opcion,*op;
    op=&opcion;
//    FILE *pf;
    t_empleado info;
    t_cola cola;
    t_cola cola2;
    crearCola(&cola);
    crearCola(&cola2);
    do
    {
        menu(op);
        ejecutar(opcion,&cola,&cola2,&info);
    }while(opcion!=9);
    return 0;
}
Ejemplo n.º 3
0
void Simulacion(s_cola *filabanco)
{
    double demora = 0, max=0;
    colaAtendidos = crearCola();
    colaAbandonos = crearCola();

    while(isEmpty(filabanco)){
    	//printf("tipo servicio: %d - demora: %d\n", filabanco->FRENTE->tipo_servicio, tiempo_servicios[filabanco->FRENTE->tipo_servicio -1]);
        demora += tiempo_servicios[filabanco->FRENTE->tipo_servicio - 1];
        max = filabanco->FRENTE->tiempoMax;
        s_cl *cl = desencolar(filabanco);
        cl->tiempoEspera = demora;
        if(demora <= max){
            encolar(colaAtendidos,cl); 
        }else{
            encolar(colaAbandonos,cl);
        }
    }
}
Ejemplo n.º 4
0
s_cola *ingresarClientes(int n)
{
	int i=0;
	s_cola *colabanco = crearCola();

	for (i = 0; i < n; i++) {
		s_cl *cl = crearCliente();
		encolar(colabanco, cl);
	}

	return colabanco;
}
Ejemplo n.º 5
0
int main(void) {
	t_cola cola;
	t_info info;
	crearCola(&cola);
	while(!colaLlena(&cola) && ingresar(&info)) {
		ponerEnCola(&cola, &info);
	}
	if(!colaVacia(&cola)) {
		printf("Hay elementos en la cola, el primero es: ");
		if(verPrimeroCola(&cola, &info))
			mostrar(&info);
		printf("\nSi vacio la cola");
		vaciarCola(&cola);
		if(!sacarDeCola(&cola, &info))
			printf("\nNo hay nada en la cola.");
	}
	return 0;
}
Ejemplo n.º 6
0
/* Main del programa - Funcion principal */
int main()
{	
	/* Inicializacion */
	srand (time());
	int n=0, cont=0;
	s_cola *filaBanco;

    do {
        mostrarOpciones();
        scanf("%d", &n);
     	filaBanco = crearCola();
		filaBanco = ingresarClientes(n);
		Simulacion(filaBanco);
		printf("Cola de atendidos: %d clientes\n", colaAtendidos->tam );
		printf("Cola de abandonos: %d clientes\n", colaAbandonos->tam );
		//printf("Numero random: %d\n", rand()%9+1 );
		//system("pause");
         cont++;
    } while (cont < SALIR);

	return 0;
}
//**********MAIN**********//
void main()
{
    FILE* pf;
    t_cola cola;
    t_pila pila;
    t_lista lista;
    t_pedido ped;
    t_producto prod;
    int cont=1;

    abrirArchivo(&pf,"r+b");
    mostrarArchivo(pf);

    crearCola(&cola);
    crearPila(&pila);
    crearLista(&lista);
    printf("\nACOLAR\n");
    printf("\nIngrese numero de cliente: ");
    scanf("%d",&ped.nCliente);
    while(ped.nCliente!=0)
    {
        printf("Ingrese codigo de producto: ");
        scanf("%d",&ped.cod);
        printf("Ingrese cantidad pedida: ");
        scanf("%d",&ped.cant);
        acolar(&cola,&ped);
        printf("\nIngrese numero de cliente: ");
        scanf("%d",&ped.nCliente);
    }

    while(desacolar(&cola,&ped))
    {
        printf("\nCliente: %d\nProducto: %d\nCantidad: %d unidades\n",ped.nCliente,ped.cod,ped.cant);
        fseek(pf,0,0);
        fread(&prod,sizeof(t_producto),1,pf);
        while(!feof(pf))
        {
            if(ped.cod==prod.codPr)
            {

                if((prod.cantStock-ped.cant)>=prod.minStock)
                {
                    printf("\nPedido del cliente %d.Fue realizado exitosamente.\n",ped.nCliente);
                    prod.cantStock-=ped.cant;
                    fseek(pf,-sizeof(t_producto),1);
                    fwrite(&prod,sizeof(t_producto),1,pf);
                    fseek(pf,0,1);
                }
                else
                {
                    if((prod.cantStock-ped.cant)>=0)
                    {
                        printf("\nPedido del cliente %d.Fue realizado, stock por debajo del minimo necesario.\n",ped.nCliente);
                        prod.cantStock-=ped.cant;
                        fseek(pf,-sizeof(t_producto),1);
                        fwrite(&prod,sizeof(t_producto),1,pf);
                        fseek(pf,0,1);
                        apilar(&pila,&prod);
                    }
                    else
                    {
                        printf("\nPedido del cliente %d.No tenemos el suficiente stock para afrontar la venta.\n",ped.nCliente);
                        ponerEnLista(&lista,&ped);
                    }
                }
            }
            fread(&prod,sizeof(t_producto),1,pf);
        }
    }
    printf("\nARCHIVO ACTUALIZADO\n");
    fseek(pf,0,0);
    mostrarArchivo(pf);
    fclose(pf);
}