Está en la página 1de 3

1

Pilas estaticas
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define MAX 10
int i=0;
struct pila
{
int cont;
int elementos[MAX];
}*pila=NULL;

void push(int);
void pop();
void recorrer();

int main()
{int op,num;
do
{
clrscr();
printf("\n\t\t\t\t\tPilas\n\n");
printf("1) Insertar
elemento.\n\n");
printf("2) Sacar elemento.\n\n");
printf("3) Recorrer.\n\n");
printf("4) Salir\n\n");
printf("Elige una opcion: ");
scanf("%d",&op);
switch(op)
{
case 1:

printf("\nIntroduce un numero: ");

scanf("%d",&num);
push(num);
break;
case 2:
pop();
break;
case 3:
recorrer();
break;
}
getch();
}while(op!=4);
return 0;
}
void push(int nuevoelemento)
{
if(pila->cont==MAX-1)
printf("\n Pila llena");
else
{
i=pila->cont;
while(i!=0)
{
pila->elementos[i]=pila->elementos[i-
1];
i--;
}
pila->elementos[0]=nuevoelemento;
printf("\n El elemento %d a sido
insertado",pila->elementos[0]);
pila->cont++;
}
}
void pop()
{
if(pila->cont==0)
printf("\n Pila vacia");
else
{ i=0;
while(i!=pila->cont)
{
pila->elementos[i] = pila-
>elementos[i+1];
i++;
}
pila->cont=pila->cont-1;
printf("Elemento borrado exitosament");
}
}
void recorrer()
{clrscr();
i=0;
while(i!=pila->cont)
{ printf(" %d\n ",pila->elementos[i]);
i++;
}
}


Cola estatica
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

#define MAX 10
int i=0;
struct pila
{
int cont;
int elementos[MAX];
}*cola=NULL;


void push(int);
void pop();
void recorrer();

2


int main()
{int op,num;

do
{
clrscr();
printf("\n\t\t\t\t COLAS\n\n");
printf("1) Insertar elemento.\n\n");
printf("2) Sacar elemento.\n\n");
printf("3) Recorrer.\n\n");
printf("4) Salir\n\n");
printf("Elige una opcion: ");
scanf("%d",&op);
switch(op)
{
case 1:
printf("\nIntroduce un numero:
");
scanf("%d",&num);
push(num);
break;
case 2:
pop();
break;
case 3:
recorrer();
break;
}
getch();
}while(op!=4);
return 0;
}

void push(int nuevoelemento)
{
if(cola->cont==MAX-1)
printf("\nCola llena");
else
{
cola->elementos[cola-
>cont]=nuevoelemento;
cola->cont++;
printf("\nElemento ingresado
correctamente");
}
}
void pop()
{
if(cola->cont==0)
printf("\nCola vacia");
else
{
i=0;
while(i!=cola->cont)
{
cola->elementos[i] = cola-
>elementos[i+1];
i++;
}
cola->cont=cola->cont-1;
printf("\nElemento borrado
correctamente");
}
}

void recorrer()
{
clrscr();
if(cola->cont==0)
printf("\nCola vacia");
else
{
i=0;
printf("\n\n");
while(i!=cola->cont)
{
printf("\t%d ",cola-
>elementos[i]);
i++;
}
}
}



Lista estatica

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define MAX 10
int i=0;
struct pila
{
int cont;
int elementos[MAX];
}*lista=NULL;


void push(int);
void pop();
void recorrer();


int main()
{int op,num;

do
{
clrscr();
printf("\n\t\t\t\t Listas\n\n");
3

printf("1) Insertar elemento.\n\n");
printf("2) Sacar elemento.\n\n");
printf("3) Recorrer.\n\n");
printf("4) Salir\n\n");
printf("Elige una opcion: ");
scanf("%d",&op);
switch(op)
{
case 1:
printf("\nIntroduce un numero:
");
scanf("%d",&num);
push(num);
break;
case 2:
pop();
break;
case 3:
recorrer();
break;
}
getch();
}while(op!=4);
return 0;
}

void push(int nuevoelemento)
{
if(lista->cont==MAX)
printf("\nLista llena");
else
{
lista->elementos[lista-
>cont]=nuevoelemento;
lista->cont++;
printf("\nElemento ingresado
correctamente");
}
}
void pop()
{int y=0,n2,cont2=0;
if(lista->cont==0)
printf("\nLista vacia");
else
{
i=0;
printf("\nNumero q desea borrar:");
scanf("%d",&n2);
while(i!=lista->cont)
{
if(n2==lista->elementos[i])
{ cont2++;
y=i;
while(y!=lista->cont)
{lista->elementos[y] =
lista->elementos[y+1];
y++;
}
}
i++;

}
if(cont2==0)
printf("\nEl elemento ingresado no
exist");
else
{
lista->cont=lista->cont-1;
printf("\nElemento borrado
correctamente");
}
}
}

void recorrer()
{
clrscr();
if(lista->cont==0)
printf("\nLista vacia");
else
{
i=0;
printf("\n\n");
while(i!=lista->cont)
{
printf("\t%d ",lista-
>elementos[i]);
i++;
}
}
}

También podría gustarte