Codigo C++ Pila
Enviado por yuliverandreina • 29 de Septiembre de 2014 • 1.375 Palabras (6 Páginas) • 281 Visitas
/*
Name: Pilas
Copyright: lenguaje de programacion ll
Author:
Date: 04/05/14 10:50
Description: Apila elemento, Desempila elemento, Mostrar pila, Destruir Pila
*/
#include <iostream>
#include<stdlib.h>
using namespace std;
struct nodo{
int nro;
struct nodo *ptrsiguiente; //autoreferencio la structura
};
typedef nodo *ptrPila; // creando nodo tipo puntero( tipo de dato )
/* Apilar elemento
------------------------------------------------------------------------*/
void empujar( ptrPila &p, int valor ) //funcion que trabaja con dos parametros
{ //uno tipo puntero y otro entero
ptrPila aux; //declaro aux
aux = new(struct nodo); // apuntamos al nuevo nodo creado asignandole almacenamiento
aux->nro = valor; //valor se lo asignamos a nro que es miembro de aux
aux->ptrsiguiente = p ; //le asigno p a ptrsiguiente que es miembro de aux
p = aux ; // p es igual a aux
}
/* Desapilar elemento(devuelve elemento)
------------------------------------------------------------------------*/
int pop( ptrPila &p )
{
int num ;
ptrPila aux;
aux = p ;
num = aux->nro; // asignamos el primer vamor de la pila
p = aux->ptrsiguiente ;
delete(aux);
return num;
}
/* Muestra elementos de la pila
------------------------------------------------------------------------*/
void mostrar_pila( ptrPila p )
{
ptrPila aux;
aux = p; // apunta al inicio de la lista
while( aux !=NULL )
{
cout<<"\t"<< aux->nro <<endl;
aux = aux->ptrsiguiente;
}
}
/* Eliminar todos los elementos de la pila
------------------------------------------------------------------------*/
void destruir_pila( ptrPila &p)
{
ptrPila aux;
while( p != NULL)
{
aux = p;
p = aux->ptrsiguiente;
delete(aux);
}
}
/* Menu de opciones
------------------------------------------------------------------------*/
void
...