Advertisement
davidcastrosalinas

20201030 Tarea en clases

Oct 30th, 2020
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.38 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. #include <queue> //cola
  6.  
  7. template <class Tipo>
  8. class Cola : private queue<Tipo> {
  9. public:
  10.     Tipo extraer(){
  11.         Tipo valor = this->front();
  12.         this->pop();
  13.         return valor;
  14.     }
  15.  
  16.     void agregar(Tipo valor){
  17.         this->push(valor);
  18.     }
  19.  
  20.     bool vacia(){
  21.         return this->empty();
  22.     }
  23. };
  24.  
  25.  
  26.  
  27. /** copia la cola de origen a destino *
  28. 1) void copiaCola(Cola origen, Cola destino) */
  29.  
  30. /** muestra la cola por pantalla, al terminar la cola queda vacía
  31. 1) void imprimeCola(Cola) */
  32.  
  33. /** muestra la cola por pantalla, al terminar la cola queda intacta
  34. 2) void muestraCola(Cola) */
  35.  
  36. /** contar elementos dentro de la cola
  37. 3) int cantidad(Cola) **/
  38.  
  39. /** sumar elementos dentro de la cola, sólo ejecutarlo con enteros
  40. 4) int sumarElementos(Cola<int>) **/
  41.  
  42. /** invierte el orden de los elementos de la cola, tip: use recursividad
  43. 5) void invierteCola(Cola) */
  44.  
  45. /** devuelve la ubicación en la cola pajar del elemento aguja, de no encontrarlo devuelve -1
  46. 6) int dondeEsta(Cola pajar, Elemento aguja) */
  47.  
  48. /** elimina de la cola el elemento que esta en la ubicacion, los otros elementos quedan en el mismo orden
  49. 7) void eliminaElementoPorUbicacion(Cola pajar, int ubicacion) */
  50.  
  51. /** determina si un valor X existe en la cola
  52. 8) bool existe(Cola<Tipo>, Tipo)  **/
  53.  
  54.  
  55. /** elimina el elemento aguja de la cola pajar, los otros elementos quedan en el mismo orden
  56. 9) void eliminaElementoPorContenido(Cola pajar, Elemento aguja) */
  57.  
  58. /** elimina las repeticiones de cualquier elemento de la cola, explicación: si encuentra que uno se repite varias veces, deja sola la primera aparición del mismo
  59. 10) void eliminaRepetidos(Cola) */
  60.  
  61. /** retornar el último elemento de la cola (usar templates)
  62. 11) Tipo ultimoElemento(Cola<Tipo>) */
  63.  
  64.  
  65. /**
  66. Una vez construidos sus métodos, deben pasar las siguientes pruebas:
  67. a) Su programación funciona sin importar si la cola que está usando es la propuesta por el profesor David o la propuesta por el Profesor Fabián (intercambielas y muestre que funciona)
  68. b) Su programación funciona con int, float, string, rectangulos (objetos de la clase Rectangulo)
  69.  
  70. tip: se recomienda crear un metodo llenar_de_datos(Cola unaCola) para evitar estar haciendo pruebas ingresando datos por teclado.
  71. */
  72.  
  73. int main()
  74. {
  75.     Cola<int> c;
  76.     cout << "Hello world!" << endl;
  77.     return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement