elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  error en cola prioritaria c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: error en cola prioritaria c++  (Leído 4,940 veces)
mari2diaz

Desconectado Desconectado

Mensajes: 24


Ver Perfil
error en cola prioritaria c++
« en: 18 Febrero 2023, 20:18 pm »

muestra la primera lista_t con solo en primer nodo, luego la segunda igual y la tercera tambien igual y ahi el programa no continua y se cierra solo, no encuentro donde esta el problema

Código
  1. void SistemaInscripcion::insertarPrioridad_2(Alumno* alumno){
  2.    Alumno *actual = cabeza_a, *anterior = nullptr;
  3.    while(actual && compararPorNivelPromedio(alumno, actual)){
  4.        anterior = actual;
  5.        actual = actual->siguiente;
  6.    }
  7.    alumno->siguiente = actual;
  8.    if(anterior)
  9.        anterior->siguiente = alumno;
  10.    else
  11.        cabeza_a = alumno;
  12. }
  13.  
  14. void SistemaInscripcion::insertarPrioridad_3(Alumno* alumno){
  15.    Alumno *actual = cabeza_a, *anterior = nullptr;
  16.    while(actual && compararPorCreditosPromedio(alumno, actual)){
  17.        anterior = actual;
  18.        actual = actual->siguiente;
  19.    }
  20.    alumno->siguiente = actual;
  21.    if(anterior)
  22.        anterior->siguiente = alumno;
  23.    else
  24.        cabeza_a = alumno;
  25. }
  26.  
  27. void SistemaInscripcion::eliminarLista(){
  28. while(cabeza_a){
  29. Alumno* eliminar = cabeza_a;
  30. cabeza_a = cabeza_a->siguiente;
  31. delete eliminar;
  32. }
  33. }
  34.  
  35. void SistemaInscripcion::asignarCupos(SistemaInscripcion* lista_a){
  36. for(Materia* m = cabeza_m; m != nullptr; m = m->siguiente){
  37. SistemaInscripcion lista_t;
  38. for(Alumno* a = lista_a->cabeza_a; a != nullptr; a = a->siguiente){
  39. for(auto it : a->materias){
  40. if(it == m->codigo_materia){
  41. if(m->prioridad == 1){
  42. lista_t.insertarPrioridad_1(a);
  43. }
  44. if(m->prioridad == 2){
  45. lista_t.insertarPrioridad_2(a);
  46. }
  47. if(m->prioridad == 3){
  48. lista_t.insertarPrioridad_3(a);
  49. }
  50. }
  51. }
  52. }
  53. lista_t.imprimirListaAlumnos();
  54. lista_t.eliminarLista();
  55. }
  56. }


En línea

K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: error en cola prioritaria c++
« Respuesta #1 en: 19 Febrero 2023, 01:40 am »

Hola @mari2diaz,
Echando un vistazo al código que has pegado, quedan bastantes incógnitas como para saber qué está ocurriendo :huh:
No podemos ver las implementaciones de varias funciones como `insertarPrioridad_1()` o `imprimirListaAlumnos()` ni los atributos de la clase,
y más importante, no sabemos con qué datos estás ejecutando el programa para poder ver por dónde debería ir la ejecución.

Si el código no es excesivamente grande, podrías darnos un poco más de información y si lo fuese,
intenta crear un ejemplo más pequeño pero que tengamos una visión completa y así ver qué está fallando.  ;D


En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cola con prioridades
Programación C/C++
sprblk 0 2,712 Último mensaje 25 Mayo 2012, 03:53 am
por sprblk
pasar datos de una cola dinámica a otra cola...
Programación C/C++
include (); 4 9,228 Último mensaje 10 Agosto 2012, 10:01 am
por BlackZeroX
suma de una cola
Programación C/C++
indict 4 5,854 Último mensaje 6 Julio 2013, 21:18 pm
por indict
Problema con una Cola
Programación C/C++
vegasound 6 2,336 Último mensaje 9 Mayo 2014, 04:14 am
por Gh057
Implementacion de una COLA en C, Error de ejecucion
Programación C/C++
ianmorar03 3 2,747 Último mensaje 15 Abril 2020, 00:57 am
por ianmorar03
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines