Mètode per a l’eliminació d’usuari a gestor de carteres cripto.

Implementa el mètode deleteUser a la classe CryptoApp. Aquest mètode ha de gestionar l’eliminació completa d’un usuari del sistema, assegurant que no quedin dades inconsistents ("orfes"). Utilitzeu l’arxiu CryptoApp.cpp i implementeu el mètode void CryptoApp::deleteUser(const string& name) situat al final de l’arxiu. Haureu de:

  1. Descarregar els arxius públics.

  2. Canviar el nom de CryptoApp_old.cpp a CryptoApp.cpp.

  3. Implementar el codi del mètode deleteUser:

    // PRE: name és el nom d'usuari a eliminar
    // POST: Si l'usuari existeix, elimina l'usuari i tots els seus 
    //       holdings associats de manera eficient. Si no, no fa res.
    void CryptoApp::deleteUser(const string& name) 
    {
    }
  4. Comprimir en format .tar l’arxiu CryptoApp.cpp.

    tar -cvf CryptoApp.tar CryptoApp.cpp
  5. Pujar l’arxiu .tar a Jutge amb la funció implementada.

ESPECIFICACIONS:

  1. Entrada: Rep el nom de l’usuari (string) (ex: jaume).

  2. Context: La classe disposa de mètodes interns que pot consultar. Per exemple, per buscar si un usuari existeix i la seva posició en vec_users, pot utilitzar:

    int findUserIndexByName(string name)

  3. Validació: Si l’usuari no existeix, la funció no ha d’eliminar res.

  4. Esborrat en Cascada: Abans d’eliminar l’usuari, ha d’eliminar totes les tinences (Holdings) vinculades a aquest usuari del vector vec_holdings.

  5. Esborrat de l’Usuari: Finalment, elimini l’usuari del vector vec_users.

Observacions:

Requisits de Rendiment (Important):

Nota: L’ordre dels elements en vec_holdings NO és rellevant i pot alterar-se durant l’esborrat. L’ordre en vec_users sí que s’ha de mantenir.

API DE CLASSES AUXILIARS

DOCUMENTACIÓ DE REFERÈNCIA DE LA CLASSE VECTOR

Utilitzi aquesta informació per seleccionar les operacions més adequades segons els requisits d’eficiència.

Entrada

Com a entrada hi haurà els comandaments de creació d’usuaris, actius i holdings, finalitzant amb la crida a deleteUser.

Sortida

El programa principal realitzarà una comprovació automàtica "Abans i Després":

  1. Imprimirà si existeix l’usuari [0,1] i quants holdings té [0, 1, ..., N] (ex: 1 3).

  2. Executarà la funció implementada.

  3. Imprimirà si l’usuari existeix [0,1] i quants holdings té amb aquest ID (si s’ha eliminat correctament: 0 0)

Informació del problema

Autoria: Jaume Gallego

Generació: 2026-01-25T21:09:35.677Z

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