#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
#define p printf
#define s scanf
main ()
{
int arreglo[100];
int numero; /*** guarda el numero ha elegir del menu **/
int tope=0;
int contadorAGREGAR; /** contador del for de agregar las pilas **/
int contadorMOSTRAR; /** contador del for de mostrar las pilas **/
int contadorELIMINAR; /** contador del for para eliminar las pilas **/
int cantidadAGREGAR; /** guarda la cantidad de elementos que quiero agregar **/
int cantidadELIMINAR; /** guarda la cantidad de elementos que quiero eliminar **/
do
{
/**COMANDO PARA CAMBIAR COLOR A LA VENTANA**/
/** COMANDO PARA LIMPIAR LA PANTALLA **/
/*******************************************/
/*******************************************/
/************ MENU DE OPCIONES **************/
/*******************************************/
/*******************************************/
p("\n\tPOR FAVOR ELIJA UNA DE LAS SIGUIENTES OPCIONES\n\n\n\n");
p("\t\t\tPILA\n");
p("\n\t1.INGRESAR UN DATO A LA PILA \n\n");
p("\t2.MOSTRAR DATOS DE LA PILA\n\n");
p("\t3.ELIMINAR DATO DE LA PILA \n\n");
p("\t4.SALIR DEL PROGRAMA \n");
/***********************************************/
s("%i",&numero); /** guarda el numero que el usuario elige **/
switch(numero)
{
/*******************************************/
/*******************************************/
/****** AGREGAR ELEMENTO A LA PILA*********/
/*******************************************/
/*******************************************/
case 1:{
p("CUANTOS ELEMENTOS QUIERE AGREGAR A LA PILA ");
scanf("%d", &cantidadAGREGAR
);
for( contadorAGREGAR = 1; contadorAGREGAR <= cantidadAGREGAR; contadorAGREGAR++ ){
p("\t INTRODIZCA EL DATO DE LA PILA NUMERO %d : ", contadorAGREGAR);
s("%i",&arreglo[tope]);
tope++; /** aumenta o suma 1 elemento al tope **/
}
}
break;
/*******************************************/
/*******************************************/
/************ MUESTRA LAS PILA **************/
/*******************************************/
/*******************************************/
case 2:
{
/** compara si tope es igual a 0 **/
if ( tope==0 )
{
/** si la condicion se cumple se muestra que esta vacia **/
p("\t LA PILA ESTA VACIA");
}
else
{
p("\tDATOS DE LA PILA\n\n");
for(contadorMOSTRAR=0; tope>contadorMOSTRAR ;contadorMOSTRAR++)
{
p("\n\t%d ",arreglo[contadorMOSTRAR]);
}
}
}
break;
/*******************************************/
/*******************************************/
/****** ELIMINA DATO DE LA PILA *********/
/*******************************************/
/*******************************************/
case 3:
{
if (tope==0)
{
p("\n\t\t NO HAY PILA QUE RETIRAR");
}
else
{
p("CUANTOS DATOS QUIERE QUITAR DE LA PILA \? ");
s("%d",&cantidadELIMINAR);
for ( contadorELIMINAR= 0; contadorELIMINAR<cantidadELIMINAR; contadorELIMINAR++)
{
tope--;
p("el elemento %d fue eliminado \n",tope);
}
}
}
break;
/*******************************************/
/*******************************************/
/******** SALE DEL PROGRMA ***********/
/*******************************************/
/*******************************************/
case 4:
{
return 0;
}
break;
}
}
while(numero<7);
}