Beispiel #1
0
int ponerEnCola(t_cola *p,const t_empleado *d)
{
    if(colaLlena(p))   //puede haber problemas
        return 0;
    p->ult++;
    if(p->ult==TAM)
        p->ult=0;
    p->cola[p->ult]=*d;
    return 1;
}
Beispiel #2
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;
}
Beispiel #3
0
void guardar_arch_bin(const char * path_bin,t_cola *cola,t_cola * cola2,t_empleado * emp)
{
    FILE * pf;

    if(!(pf=fopen(path_bin,"wb")))
        printf("No se pudo abrir el archivo %s\n",path_bin);
    else{
        while(!colaVacia(cola))
        {
            sacarDeCola(cola,emp);
            if(!colaLlena(cola2))
                ponerEnCola(cola2,emp);
        }
        while(!colaVacia(cola2))
        {
            sacarDeCola(cola2,emp);
            ponerEnCola(cola,emp);
            fwrite(cola,sizeof(t_cola),1,pf);
        }
        printf("%s se grabo correctamente\n",path_bin);
        fclose(pf);
    }
}
Beispiel #4
0
void ejecutar(int opcion, t_cola *cola,t_cola *cola2,t_empleado *info)
{
    switch(opcion)
    {
        case 1:
            puts("Cargar registro");
            if(!colaLlena(cola))
            {
                while(!colaLlena(cola))
                {
                    puts("Ingrese un registro: \n");
                    cargarInfo(info);
                    //mostrarInfo(&info);
                    if(ponerEnCola(cola,info))
                        puts("Se agrego un registro\n");
                }
            }else
                puts("La cola ya esta cargada.\n\n");
            break;
        case 2:
            if(!colaVacia(cola))
            {
                while(!colaVacia(cola))
                {
                    //if(verPrimero(cola,info))
                      //  mostrarInfo(info);
                    if(sacarDeCola(cola,info))
                    {
                        mostrarInfo(info);
                        puts("\nSaque de Cola\n");
                    }
                }
            }else
                puts("La cola esta vacia.\n\n");
            break;
        case 3:
            if(!colaVacia(cola))
            {
                vaciarCola(cola);
                puts("cola vacia.\n\n");
            }
            break;
        case 4:
            if(!colaVacia(cola))
            {
                if(verPrimero(cola,info));
                {
                    puts("Primero: \n");
                    mostrarInfo(info);
                }
            }else
                puts("La cola esta vacia.\n\n");
            break;
        case 5:
            if(!colaVacia(cola)){
               guardar_arch_bin("cola.bin",cola, cola2,info);
            }else
                puts("La cola esta vacia.\n\n");
            break;
        case 6:
            cargar_arch_bin("cola.bin",cola,info);
            break;
        case 7:
            if(TODO_OK==binario_a_texto("cola.bin","cola.txt"))
                puts("Se convirtio de binario a texto\n");
            else
                puts("Error al querer convertir de binario a texto\n");
            break;
        case 8:
            if(TODO_OK==texto_a_binario("cola.txt", "cola.bin"))
                puts("Se convirtio de texto a binario\n");
            else
                puts("Error al querer convertir de texto a binario\n");
            break;

    }
    system("pause");
}