EJERCICIOS DE PILA Y COLA
COLA:
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
struct datos {
int dato;
datos *s;
}*p,*aux,*u;
void insertar (int dat);
void borrar ();
void listar ();
main()
{
int opc,y;
do
{
cout<<"\n1. Insertar";
cout<<"\t2.
Borrar";
cout<<"\t3.
Listar";
cout<<"\t4. Salir";
cout<<"\n
Ingrese opcion: ";cin>>opc;
switch(opc)
{
case 1: cout<<"Ingrese dato: ";
cin>>y;
insertar(y);
cout<<"\nDato insertado!!";
break;
case 2: borrar();
break;
case 3: listar(); break;
case 4: exit(1);
default: cout<<"\n
Opcion no valida!!"; break;
}
}while(opc);
}
void insertar (int dat)
{
aux=new(datos);
aux->dato=dat;
if(u)
{
u->s=aux;
aux->s=NULL;
u=aux;
}
else
{
p=u=aux;
}
}
void borrar()
{
if(p)
{
aux=p;
cout<<"\nElimino
a " <<p->dato;
p=aux->s;
delete(aux);
}
else
{
cout<<"\n No hay datos";
}
}
void listar()
{
int i;
if(!u)
{
cout<<"\n No hay datos en la cola";
return;
}
aux=p;
while(aux)
{
cout<<"\n"<<++i<<" - "<<aux->dato;
aux=aux->s;
}
}
____________________________________________________________
PILA:
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
struct
pilas
{
int d;
pilas *a;
}*c,*e;
void
menu(void);
void
ingresar(void);
void sacar
(void);
void
actualizar_pila(void);
main()
{
menu();
}
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();
}
}
void
ingresar (void)
{
if(!c)
{
c=new(pilas);
cout<<"Ingrese
elemento: ";
cin>>c->d;
c->a=NULL;
return;
}
e=new(pilas);
cout<<"\nIngrese
elemento: ";
cin>>e->d;
e->a=c;
c=e;
}
void sacar(void)
{
if(!c)
{
cout<<"\n\nNo hay elementos!!";
return;
}
e=new(pilas);
e=c;
cout<<"\n\nElemento
eliminado: " <<e->d;
c=e->a;
delete(e);
}
void actualizar_pila(void)
{
int
y=2,i,ca=0;
e=c;
while(e)
{
ca++;
e=e->a;
}
for(i=0;i<=ca;i++)
{
cout<<"
";
}
//muestra lo que tiene
la pila!!
i=0;
e=c;
while(e)
{
cout<<"\n";
cout<<++i<<" - "<<e->d;
e=e->a;
}
}
CORPORACIÓN IBEROAMERICANA DE ESTUDIOS
MATERIA:
ESTRUCTURA DE DATOS
INTEGRANTES DEL TRABAJO:
MATERIA:
ESTRUCTURA DE DATOS
INTEGRANTES DEL TRABAJO:
- LICETH REPIZO PRADA
- NILSON HUERFANO
- FABIAN IBAÑEZ
MAESTRO:
- JORGE RODRIGUEZ
JORNADA:
SÁBADOS 8AM-12PM
No hay comentarios:
Publicar un comentario