Pop N

Implementa un mètode públic de la classe Stack<T> que elimini l’element
i-èssim des del cim de la pila. És a dir, considerem que el cim de la
pila té l’índex 0.

La declaració és la següent:

    /**
     * @post: S'ha eliminat de la pila l'element `i`-èssim, amb `i` en el
     *        rang de 0 a N-1 (amb 0 el cim), sent N la mida de la pila. 
     *        Si l'índex no està en el rang 0 a N-1, la pila no canvia.
     */
    void eliminar(int i);

Observació

Per poder avaluar l’ús de punters, no feu servir altres mètodes, ni
públics ni privats de la classe per resoldre el problema, accediu sempre
als membres privats directament.

Observeu que a l’entrada la pila es llegeix començant per la base fins
al cim, que surt l’últim, i en canvi a la sortida és al revés (les
marques <top> i <bottom> ho aclareixen).

Els fitxers públics (icona del gatet) contenen:

  ---------- ------------------------------------------------------
  stack.hh   la classe Stack<T>
  main.cc    el programa principal (gestiona l’entrada i sortida)
  Makefile   per compilar amb make al terminal
  .vscode    per compilar i depurar amb F5
  ---------- ------------------------------------------------------

Per entregar només cal enviar el fitxer stack.hh modificat.

Entrada

De l’entrada ja se n’encarrega el programa principal. L’entrada està
formada per diferents cassos seguits. Cada cas conté un enter i seguit
d’una pila (una seqüència d’enters acabada amb #).

Sortida

De la sortida també se n’encarrega el programa principal. La sortida
mostra la pila resultant després d’eliminar l’element i-èssim des del
top.

Informació del problema

Autoria: Mª Lluïsa Bonet i Pau Fernández

Generació: 2026-03-25T18:22:54.334Z

© Jutge.org, 2006–2026.
https://jutge.org
