5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Alejandro Blanco -
Número de respuestas: 14

.

(Editado por Maria de las Nieves Freira - envío original sábado, 10 de agosto de 2024, 20:04)

En respuesta a Alejandro Blanco

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Tomas Jorge Carrau Giacummo -
buenas, mi duda es porque en el TClientesABB removerNesimoClientesSucursalesLDE(TClientesSucursalesLDE clientesSucursalesLDE, int n) el clientesSucursalesLDE no se pasa por referencia, porque no se supone que te deberia cambiar la lista?
En respuesta a Tomas Jorge Carrau Giacummo

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Raul Maglione -
Buenas Tomas,
Se respondió a una pregunta similar acá: https://eva.fing.edu.uy/mod/forum/discuss.php?d=301416
Si aun así necesitas una explicación más detallada no dudes en volver a preguntar.
Saludos,
Raúl.
En respuesta a Alejandro Blanco

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Marcelo Alessandro Méndez Noria -

En las funciones de remover debe eliminarse el nodo o solo debe asignarle al cliente el valor NULL?

En respuesta a Marcelo Alessandro Méndez Noria

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Maria de las Nieves Freira -

Hola, Marcelo.

Debe eliminarse el nodo.

Saludos cordiales.

En respuesta a Maria de las Nieves Freira

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Marcelo Alessandro Méndez Noria -
Otra consulta me tira el error tamaño excedido yo el cliente no lo estoy liberando ya que si no me tira que le estoy pasando un dato nulo tengo que crear una copia de los datos del cliente en una variable o porque podría estar surgiendo este problema
En respuesta a Maria de las Nieves Freira

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Gonzalo Alejandro Sellanes Niell -
como lo retornamos al clientesABB si debemos eliminarlo?
En respuesta a Gonzalo Alejandro Sellanes Niell

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Yael Michelena Koifmann -
Hola,

Deben eliminar el nodo pero no liberar la memoria asignada al clientesABB, que es lo que deben retornar.
Tendrán que encontrar una manera para no perder el ABB antes de hacer el delete del nodo a remover de la lista.

Saludos,
Yael
En respuesta a Alejandro Blanco

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Tomas Jorge Carrau Giacummo -
ejecucion del test manual y el .outbuenas, estoy teniendo un problema, los clientes estan desordenados y no entiendo porque puede ser, ya que no tiene nada que ver con esta funcion y las demas las tengo todas bien ya, de antemano muchas gracias 

En respuesta a Alejandro Blanco

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Sofía Spósito Banchero -
Hola, cuando quiero implementar removerUltimoClientesSucursalesLDE me salta el siguiente error de memoria. Ya probe varias alternativas y no encuentro donde puede estar el problema, ademas el error me marca una línea en la cual asigno "clientesSucursales->fin->ant", como si el error fuera por el anterior pero en la funcion imprimirInvertido lo utilice asi y me funciono bien.

Adjunto Captura de pantalla 2024-09-14 125633.png
En respuesta a Alejandro Blanco

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Germán Allan Delgado Di Sabella -
Buenas, estoy teniedo problemas con removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE(TClientesSucursalesLDE en el clientesSucursalesLDE4-removerultimo-removerenesimo.sal aparece esto:
==40658== Invalid read of size 8
==40658== at 0x10CB45: cantidadTClientesABBClientesSucursalesLDE(rep_clientesSucursalesLDE*) (clientesSucursalesLDE.cpp:95)
==40658== by 0x10B527: main_cantidadClientesSucursalesLDE(rep_clientesSucursalesLDE*) (principal.cpp:864)
==40658== by 0x109D28: main (principal.cpp:349)
==40658== Address 0x4dead08 is 8 bytes inside a block of size 32 free'd
==40658== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==40658== by 0x10CC19: removerUltimoClientesSucursalesLDE(rep_clientesSucursalesLDE*) (clientesSucursalesLDE.cpp:133)
==40658== by 0x10B619: main_removerUltimoClientesSucursalesLDE(rep_clientesSucursalesLDE*) (principal.cpp:889)
==40658== by 0x109D8A: main (principal.cpp:357)
==40658== Block was alloc'd at
==40658== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==40658== by 0x10C79B: crearTClientesSucursalesLDEVacia() (clientesSucursalesLDE.cpp:10)
==40658== by 0x10B38E: main_crearClientesSucursalesLDE(rep_clientesSucursalesLDE*&) (principal.cpp:824)
==40658== by 0x109C29: main (principal.cpp:329)
==40658==
==40658== Invalid read of size 8
==40658== at 0x10CB32: cantidadTClientesABBClientesSucursalesLDE(rep_clientesSucursalesLDE*) (clientesSucursalesLDE.cpp:98)
==40658== by 0x10B527: main_cantidadClientesSucursalesLDE(rep_clientesSucursalesLDE*) (principal.cpp:864)
==40658== by 0x109D28: main (principal.cpp:349)
==40658== Address 0x4dead10 is 16 bytes inside a block of size 32 free'd
==40658== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==40658== by 0x10CC19: removerUltimoClientesSucursalesLDE(rep_clientesSucursalesLDE*) (clientesSucursalesLDE.cpp:133)
==40658== by 0x10B619: main_removerUltimoClientesSucursalesLDE(rep_clientesSucursalesLDE*) (principal.cpp:889)
==40658== by 0x109D8A: main (principal.cpp:357)
==40658== Block was alloc'd at
==40658== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==40658== by 0x10C79B: crearTClientesSucursalesLDEVacia() (clientesSucursalesLDE.cpp:10)
==40658== by 0x10B38E: main_crearClientesSucursalesLDE(rep_clientesSucursalesLDE*&) (principal.cpp:824)
==40658== by 0x109C29: main (principal.cpp:329)
==40658==
==40658== Invalid read of size 8
==40658== at 0x10C7EF: insertarClientesABBTClientesSucursalesLDE(rep_clientesSucursalesLDE*, rep_clientesABB*, int) (clientesSucursalesLDE.cpp:15)
==40658== by 0x10B439: main_agregarClientesASucursalesLDE(rep_clientesSucursalesLDE*&, rep_clientesABB*&) (principal.cpp:832)
==40658== by 0x109C64: main (principal.cpp:333)
==40658== Address 0x4dead08 is 8 bytes inside a block of size 32 free'd
==40658== at 0x484BB6F: operator delete(void*, unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==40658== by 0x10CC19: removerUltimoClientesSucursalesLDE(rep_clientesSucursalesLDE*) (clientesSucursalesLDE.cpp:133)
==40658== by 0x10B619: main_removerUltimoClientesSucursalesLDE(rep_clientesSucursalesLDE*) (principal.cpp:889)
==40658== by 0x109D8A: main (principal.cpp:357)
==40658== Block was alloc'd at
==40658== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==40658== by 0x10C79B: crearTClientesSucursalesLDEVacia() (clientesSucursalesLDE.cpp:10)
==40658== by 0x10B38E: main_crearClientesSucursalesLDE(rep_clientesSucursalesLDE*&) (principal.cpp:824)
==40658== by 0x109C29: main (principal.cpp:329)
En respuesta a Germán Allan Delgado Di Sabella

Re: 5. Implemente las funciones removerUltimoClientesSucursalesLDE y removerNesimoClientesSucursalesLDE.

de Yael Michelena Koifmann -
Hola Germán,

Te sugiero que vayas ejecutando paso a paso el test a mano para que puedas identificar el momento donde da el error, luego de eso podrías recrear el test hasta ese punto en una hoja de papel, por ejemplo, donde puedas ir viendo de una manera mas gráfica lo que esta haciendo tu programa.

Saludos!
Yael