Actividad de Aprendizaje 04. Aplicación de Pila y Cola
Enviado por Juan Rodriguez Tabares • 9 de Noviembre de 2020 • Tarea • 1.871 Palabras (8 Páginas) • 201 Visitas
[pic 1]
Actividad de Aprendizaje 04. Aplicación de Pila y Cola
MAESTRO:
Gutiérrez Hernández Alfredo
ALUMNO
Rodríguez Tabares Juan
CODIGO
215615699
CARRERA
Ingeniería en Computación
MATERIA:
Estructura de datos I
HORARIO:
Miércoles y Viernes
9:00AM-11:00AM
SECCION:
D05
Esta actividad requirió gran esfuerzo por parte mía ya que al momento de tener que hacer el algoritmo me costó bastante por el hecho de que no sabía siquiera por dónde empezar, pero después de investigar un poco en libros y hablar con compañeros de como seria la realización de dicho algoritmo empecé a realizarlo.
Una vez visto como se podía abarcar el problema tanto con la cola como con la pila entre otras funciones para identificar preferencias de signos, empecé a codificar lo cual ya con lo hecho en clase (pilas y colas) y una buena investigación la realización de el resto del programa no requirió de gran esfuerzo.
CODIGO
Stack.h
#ifndef PILA_H
# define PILA_H
#include <iostream>
template <class T, int ARRAYSIZE = 1024>
class Stack{
private:
T data[ARRAYSIZE];
int top;
void copyAll(const Stack&);
public:
class Exception : public std::exception {
private:
std::string msg;
public:
explicit Exception(const char* message) : msg(message) {}
explicit Exception(const std::string& message) : msg(message) {}
virtual ~Exception() throw () { }
virtual const char* what() const throw () {
return msg.c_str();
}
};
Stack();
Stack(const Stack&);
bool isEmpty();
bool isFull();
void push(const T&);
T pop();
T getTop();
Stack& operator = (const Stack&);
};
template <class T, int ARRAYSIZE>
Stack<T, ARRAYSIZE>::Stack(){
top=-1;
}
template <class T, int ARRAYSIZE>
void Stack<T, ARRAYSIZE>::copyAll(const Stack &s){
int i(0);
while(i<=s.top){
this->data[i]=s.data[i];
i++;
}
this->top=s.top;
}
template <class T, int ARRAYSIZE>
Stack<T, ARRAYSIZE>::Stack(const Stack& s){
copyAll(s);
}
template <class T, int ARRAYSIZE>
bool Stack<T, ARRAYSIZE>::isEmpty(){
return top==-1;
}
template <class T, int ARRAYSIZE>
bool Stack<T, ARRAYSIZE>::isFull(){
...