Version:0.9 StartHTML:0000000105 EndHTML:0000004750 StartFragment:0000000152 EndFragment:0000004716
/******************************************************/
/*************** Isidro Pastor Jorda ******************/
/*************** Noemi Ruth Moya Hinojo ***************/
/******************************************************/
/****************** Telematica ************************/
/******************** FPII ****************************/
/****************** Practica 3 ************************/
/******************************************************/
#include <iostream.h>
#include <stdlib.h>
#include "PilaE.h"
/*****************************************************************************
* Funcion: Pila
* Descripcion: Constructor de clase Pila
*
*
*
* Parametros:
*
* Nombre E/S Descripcion
* ------ ----- -----------
*
*
*
*
* Valor devuelto:
* Inicializa un objeto de la clase pila
*****************************************************************************/
Pila::Pila()
{
top = -1;
};
/*****************************************************************************
* Funcion: Apilar
* Descripcion: Apila el elemento x en el objeto pila
*
*
*
* Parametros:
*
* Nombre E/S Descripcion
* ------ ----- -----------
* x E Elemento a apilar en el objeto pila
*
*
*
* Valor devuelto:
* bool, cierto si se puede apilar, falso en caso contrario
*****************************************************************************/
bool Pila::Apilar (int x)
{
bool ok;
if(top == TALLAMAX -1)
ok = false;
else
{
ok = true;
Datos[top + 1] = x;
top++;
}
return (ok);
};
/*****************************************************************************
* Funcion: Desapilar
* Descripcion: Desapila el primer elemento del objeto pila que hace la llamada
*
*
*
* Parametros:
*
* Nombre E/S Descripcion
* ------ ----- -----------
*
*
*
*
* Valor devuelto:
* Bool, cierto si se ha podido desapilar, falso en caso contrario
*****************************************************************************/
bool Pila::Desapilar()
{
bool ok;
if(PilaVacia())
ok = false;
else
{
ok = true;
top --;
}
return (ok);
};
/*****************************************************************************
* Funcion: CimaPila
* Descripcion: Almacena en el valor pasado como parametro el valor del primer
* elemento del objeto pila que hace la llamada
*
*
*
* Parametros:
*
* Nombre E/S Descripcion
* ------ ----- -----------
* res E/S Donde almacenaremos el valor de la cima de la pila
*
*
*
* Valor devuelto:
* Bool, cierto si se ha podido asignar la cima, falso en caso contrario
*****************************************************************************/
bool Pila::CimaPila (int & res)
{
bool ok;
if(PilaVacia())
ok = false;
else
{
res = Datos[top];
ok = true;
}
return (ok);
};
/*****************************************************************************
* Funcion: PilaVacia
* Descripcion: Nos dira si en el objeto pila que hace la llamada hay elementos
* o por el contrario esta vacia
*
*
*
* Parametros:
*
* Nombre E/S Descripcion
* ------ ----- -----------
*
*
*
*
* Valor devuelto:
* bool, cierto si la pila esta vacia, falso en caso contrario
*****************************************************************************/
bool Pila::PilaVacia (void)
{
return(top == -1);
};