Algoritmo de Pilas en C++ PDF

Title Algoritmo de Pilas en C++
Course Programación Estructurada
Institution Universidad de Guayaquil
Pages 4
File Size 52.7 KB
File Type PDF
Total Downloads 78
Total Views 142

Summary

Algoritmo diseñado en C++ que guarda elementos en una pila usando el método FIFO, y posteriormente tiene la capacidad de mover dicha pila en conjunto....


Description

ALGORITMO QUE MUEVE LOS ELEMENTOS DE UNA PILA COMPUESTA POR UN VALOR ENTERO Y UN PUNTERO TIPO NODO. #include #include #include struct Nodito{ int val; Nodito *dir; }; Nodito *cab=NULL, *cab2=NULL; int n1, op; int vacia(Nodito*); void addpila(Nodito*&, int); void mostrar(Nodito*); void moverpila(Nodito*&); int main() { do{ //MEEENU system("cls"); do{ printf("\n\tMENU DE OPCIONES."); printf("\n1.Ingresar un valor a la pila."); printf("\n2.Mostrar los valores ingresados en la pila."); printf("\n3.Mover los elementos de la pila."); printf("\n4.Salir."); printf("\nIngrese una opcion: "); scanf("%d", &op); }while( op5); switch(op){ case 1: system("cls"); printf("Ingrese un valor: "); scanf("%d", &n1); addpila(cab, n1); break;

case 2: system("cls"); mostrar(cab); printf("\n"); system("pause"); break; case 3: system("cls"); moverpila(cab); printf("\n\n"); getch(); printf("\n"); system("pause"); break; case 4: system("cls"); printf("\t\nPresione una tecla para salir."); break; }//switch }while(op!=4); getch();

}//main

int vacia(Nodito *cab){ if(cab==NULL) return 1; else return 0; }

void addpila(Nodito*& cab, int n) { Nodito* nodititito = new Nodito(); nodititito->val=n;

nodititito->dir=cab; cab=nodititito; }//fun void mostrar(Nodito *cab) { Nodito* aux=cab; if ( vacia(cab)) { printf("\n\tPILA VACIA."); } else{ while(aux!=NULL){ printf("\nEl valor en la direccion de memoria %d es: %d",aux, aux->val); aux=aux->dir; }//else } }//fun

void moverpila(Nodito*&cab) { Nodito *aux = cab; if(vacia(cab)) printf("\nPila vacia."); else{ while(aux!=NULL){ addpila(cab2,aux->val); aux=aux->dir; }//while mostrar(cab2);

Nodito *p=cab; while(p!=NULL){ Nodito* aux2=p;

p=p->dir; delete(aux2); }///whiledelete }//else cab=NULL; printf("\n%d",cab);

}//fun...


Similar Free PDFs