Está en la página 1de 3

package EP_1_Juan;

public class EP_1_Juan {

public static void main(String[] args) {

// TODO code application logic here


// TODO code application logic here
// se crea la Pila llamada pilatextojuan1
pilatextojuan pilatextojuan1 = new PilaTextoJuan(20);
// se lista el contenido de pilatextojuan1
System.out.println("CONTENIDO DE LA PILA AL INICIO");
pilatextojuan1.listar();
// apilamos 4 datos
pilatextojuan1.push('D');
pilatextojuan1.push('G');
pilatextojuan1.push('H');
pilatextojuan1.push('M');

System.out.println("CONTENIDO DE LA PILA DESPUES DE APILAR 5DATOS");


pilatextojuan1.listar();

pilatextojuan1.pop();
System.out.println("CONTENIDO DE LA PILA DESPUES DE DESAPILAR LOS 5 DATO");
pilatextojuan1.listar();

}
}

package ep_1_juan;

/**
*
* @author Intel
*/
public class PilaTextoJuan { //implementamos el tda pila
// nuestros atributos a declarar
int capacidad = 20;
char dato[] = new char[capacidad];
int cima = -1;

public PilaTextoJuan(int capacidad) { // Es nuestro contructor


this.capacidad = capacidad;
this.cima = -1;
}

// métodos, se implementan las OPERACIONES DEL TDA


public int size() { // Devuelve el tamaño de la pila
return (cima + 1);
} // fin de size

public boolean estaVacia() { // devuelve true si la pila está vacía


return (cima < 0);
// if (cima>=0) return false;
// else return true;
} // fin de estaVacia

@SuppressWarnings("ValueOfIncrementOrDecrementUsed")
public void push(char car) { // Push poner un nuevo elemento en la pila
//System.out.println("size "+size());
if (size() == capacidad) {
System.out.println("Pila llena, no se almacenó el dato");
} else {
//cima++;
// dato[cima] 0 car;
dato[++cima] = car;
System.out.println("Se apilo el dato ... " + car);
}
} // fin de push

public int pop() {// Pop extrae el elemento de la cima siempre que tenga datos
int elem = 0;
if (estaVacia()) //throw new StackEmptyException(“Pila vacia.”);
{
System.out.println("Pila vacía, no se puede desapilar nada)");
}
else {
elem = dato[cima];
cima--; // se disminuye el valor de cima
}
return elem;
} // fin de pop

public int tope () {// Devuelve el elemento de la cima sin desapilar siempre que tenga datos
int elem = 0;
if (estaVacia()) //throw new StackEmptyException(“Pila vacia.”);
{
System.out.println("Pila vacía, no se puede desapilar nada)");
}
else {
elem = dato[cima];
}
return elem;
} // fin cima

public void listar() {


if (estaVacia()) {
System.out.println("PILA SIN DATOS");
} else {
for (int x = cima; x >= 0; x--) {
System.out.println(dato[x]);
}
}
} // fin de listar

También podría gustarte