/**
* @(#)Pilas.java
*
*
* @author Heryck Misael Muñoz Mora
* @version 1.00 2014/4/8
*/
import java.util.Scanner;
public class Pilas {
/**
* Creates a new instance of <code>Pilas</code>.
*/
public Pilas() {
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Scanner ent = new Scanner (System.in);
int opcion, n, cima=0;
int [] pila;
System.out.println("\n\nCantidad de elementos de la Pila :"); // Ingrese el tamaño de la pila
n = ent.nextInt();
pila = new int[n]; // pila es igual a la entrada del tamaño en "n"
System.out.println("\n\n Pila creada con exito.....\n\n\n\n");
do{
System.out.println("\n\n\n");
System.out.println("1.- PUSH");
System.out.println("2.- POP");
System.out.println("3.- PRESENTAR PILA");
System.out.println("4.- LIMPIAR PILA");
System.out.println("5.- TERMINAR");
System.out.println("6.- TERMINAR");
opcion = ent.nextInt();
switch (opcion)
{
case 1: //push (pila);
cima=push(pila, cima);
break;
case 2: //pop (pila);
cima=pop(pila, cima);
break;
case 3: presentar (pila, cima);
break;
case 4: cima=0;
System.out.println("Pila Vacia");
break;
case 5: break;
default:
System.out.println("Opcion equivocada");
} // cierra el switch
}
while(opcion != 5); // cierra el do
} // cierra el main
public static int push(int [] p, int c)
{
Scanner ent = new Scanner(System.in);
if(c<p.length)
{
c++; // (mas mas)incrementa en 1 el elemento
System.out.print("Ingrese elemento"+c+" :");
p[c-1]= ent.nextInt();
}
else
{
System.out.print("Elemento Pila ya esta hasta el Tope \nElimine un elemento o Salga");
}
return c;
}
public static int pop(int [] p, int c)
{
if(c !=0)
{
System.out.print("Se elimina el elemento"+c+" = "+p[c-1]);
c--; // (menos menos) decrementa en 1 el elemento
}
else
{
System.out.print("Elemento Pila esta vacia \nSin Datos");
}
return c;
}
public static void presentar (int [] p, int c)
{
if (c !=0)
{
System.out.println("Mostrando datos de Pila");
for ( int i=c-1; i>=0; i--)
{
System.out.println("elemento"+i+": "+p[i]);
}
}
else
{
System.out.println("PILA VACIA");
}
}
}
/* 1.- PUSH (ingresar datos a pila)
* 2.- POP (eliminar datos de pila)
* 3.- PRESENTAR PILA
* 4.- LIMPIAR PILA
* 5.- SALIR
*
*
* cima estara en el ultimo elemento del arreglo
* cima es el apuntodor del arreglo
*
*/
No hay comentarios:
Publicar un comentario