示例#1
0
void Pilas::on_pushButton_clicked()
{
    Nodo* ob=new Nodo();
        Nodo* ob2=new Nodo();
        Nodo* ob3=new Nodo();
        ob->valor=1;
        ob2->valor=2;
        ob3->valor=3;
        meter(ob);
        meter(ob2);
        meter(ob3);

        cout<<ob->valor<<endl;
        cout<<ob2->valor<<endl;
        cout<<ob3->valor<<endl;
        cout<<"Tope "<<getTope()->valor<<endl;
        cout<<endl;
        cout<<"Sacar"<<endl;
        sacar();
        cout<<ob->valor<<endl;
        cout<<ob2->valor<<endl;
        cout<<"Tope "<<getTope()->valor<<endl;
        cout<<endl;
        sacar();
        meter(ob);
        cout<<ob2->valor<<endl;
        cout<<ob3->valor<<endl;
        cout<<ob->valor<<endl;
        cout<<"Tope "<<getTope()->valor<<endl;
}
示例#2
0
int main(int argc, const char **argv){
    int pila[N];
    int primera_pos_libre = 0;
    int entrada, salida;

    while(1){
        entrada = -1;
        printf(": ");
        scanf(" %i", &entrada);
        __fpurge(stdin);
        printf("entrada = %i\n", entrada);

        if (entrada < 0)
            salida = sacar(pila, &primera_pos_libre);
        else
            meter(entrada, pila, &primera_pos_libre);

        mostrar_estado(pila, primera_pos_libre, salida);
    }

    return EXIT_SUCCESS;
}
示例#3
0
int main(int argc, const char **argv){

    int pila[N];
    int primera_pos_libre = 0;
    int entrada,
        salida = 0;
    int *pbase;

    pbase = &pila[0]; // Puntero referencia de la base de la pila

    system("clear");

    do{


        printf(": ");
        scanf(" %i", &entrada);
        fpurge(stdin);
        printf("entrada = %i\n", entrada);

        if (entrada < 0)
            salida = sacar(pila, &primera_pos_libre, pbase);
        else
            meter(entrada, pila, &primera_pos_libre);

        system("clear");
        mostrar_estado(pila, primera_pos_libre, salida);

    }while(1);





    return EXIT_SUCCESS;
}
void menu(void)
{
	int y, opc;
	for (;;)
	{
		cout << "\n1. Ingresar datos";
		cout << "\t2. Sacar datos";
		cout << "\t0. Terminar";
		cout << "\n Ingrese opcion: "; cin >> opc;
		switch (opc)
		{
		case 1:
			ingresar();
			break;
		case 2: sacar();
			break;
		case 0: exit(1);
		default: cout << "\n Opcion no valida!!"; break;
		}
		actualizar_pila();
		cout << "\n\nOprima una tecla para continuar";
		getch();
	}
}
示例#5
0
int main()
{
        NODO *puntero;
        int val,op;
        puntero=(NODO*)malloc(sizeof(NODO) *1);

        inicializar(puntero);
        do {

                printf("Elija una opcion\n 1- Inserta un numero\n 2-Borrar dato\n 3- Imprimir frente\n 4- Imprimir cola\n");
                scanf("%d", &op);

                switch (op){
                        case 1:
                                printf("Escriba el numero a ingresar\n");
                                scanf("%d", &val);
                                insertar(puntero, val);
                                break;
                        case 2:
                                sacar(puntero);
                                break;
                        case 3:
                                imprimir_frente(puntero);
				break;
			case 4:
				imprimir_cola(puntero);
				break;
                        default:
                                puts("Estas mal\n");
                }
        }
                while (op < 5);


        return 0;
}
示例#6
0
bool Pilas::anular(){
    while(sacar());
}
示例#7
0
int main(){
    /*El usuario puede introducir o sacar en una de las tres pilas un número de x tamaño. Se mostrará lo que hay en todas.*/
    //Opciones y menú
    char eleccion;
    int numero, lugar;
    int A = 0,
        B = 0,
        C = 0;
    int num_mostrado = 0;
    Pila discos;
    discos.cima_A = 0;
    discos.cima_B = 0;
    discos.cima_C = 0;

    system("clear");
    printf("a) Introducir número.\n");
    printf("b) Sacar número.\n");
    printf("c) Mostrar números.\n");
    printf("\n → ");
    scanf(" %c", &eleccion);

    switch(eleccion){
        case 'a':
            printf("Pila número (1,2,3): ");
            scanf(" %i", &lugar);
            printf("Número = ");
            scanf(" %i", &numero);
            if(lugar > 3 || lugar < 1)
                printf("\nError: Pila %i no existe\n", lugar);
            else
                introducir(&discos, numero, lugar, A, B, C);
            if(lugar == 1) A++;
            if(lugar == 2) B++;
            if(lugar == 3) C++;
            //mostrar(discos);
            break;
        case 'b':
            printf("Pila número (1,2,3):");
            scanf(" %i", &lugar);
            sacar(&discos, lugar, A, B, C);

            //mostrar(primera, segunda, tercera);
            break;
        case 'c':
            printf("\nPila 1 → ");
            for(int i = 0; i < N; i++){
                num_mostrado = discos.dato_A[i];
                printf("%i | ", num_mostrado);
            }
            printf("\nPila 2 → ");
            for(int i = 0; i < N; i++){
                num_mostrado = discos.dato_B[i];
                printf("%i | ", num_mostrado);
            }
            printf("\nPila 3 → ");
            for(int i = 0; i < N; i++){
                num_mostrado = discos.dato_C[i];
                printf("%i | ", num_mostrado);
            }
            printf("\n\n");

            break;

    }



    return EXIT_SUCCESS;
}
示例#8
0
/*---------------------------------------------------------------------------------*/

int main(void) {
	nodo * uno = new(1, "hola");
	nodo * dos = new(2, "como");
	nodo * tres = new(3, "estas?");

    nodo * una_lista;
	una_lista = NULL;

	insertar_por_indice(&una_lista, &uno, 0);
	insertar_por_indice(&una_lista, &dos, 1);
	nodo * otro = new(1, "chau");
	insertar_por_indice(&una_lista, &otro , 0);

	nodo * sacado = sacar(&una_lista);
	encolar(&sacado, &una_lista);
	insertar_por_indice(&una_lista, &tres, 1);
	nodo * foo = new(44, "zarlompa");
	encolar(&foo, &una_lista);
	eliminar(&una_lista, 2);
	nodo * bar = new(33, "saraaaaaza");
	apilar(&bar, &una_lista);
	nodo * b = busca_por_indice(&una_lista, 3);
	printf("%d %s\n", b->contenido->un_valor, b->contenido->un_string);
	sacar(&una_lista);
	mostrar(&una_lista);
	reverse(&una_lista);
	printf("\nreverso\n");
	mostrar(&una_lista);
示例#9
0
void Pilas::on_pushSacar_clicked()
{
    sacar();
    imprimir();
}
示例#10
0
void Pilas::anular()
{
    while(sacar());
}