• Jueves 14 de Noviembre de 2024, 22:37

Autor Tema:  Pila Con Listas Enlazadas  (Leído 1414 veces)

Desve

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Pila Con Listas Enlazadas
« en: Martes 29 de Marzo de 2005, 10:10 »
0
Estoy trabajando en una pila con listas enlazadas y tengo el siguiente problema

declaro de esta forma la estructura

TNodo=^NodoPila;
NodoPila=RECORD
elemento:integer;
enlace:TNodo;
END;

luego declaro

Cima,AUX:^NodoPila;

para los trabajos de insercion y sacar, etc.


El problema radica en que al al momento de insertar
(este es el codigo)

new(AUX);
AUX^.elemento:=n;
AUX^.enlace:=Cima; <----------- me marca error en esta linea
Cima:=AUX;

lanza un comentario diciendo que son imcompatibles, (supongo que por que uno esta declarado como TNodo y otro Por ^NodoPila).
Entonces para corregir eso yo pensaba era declarar de esta manera para que los tipos de datos sean compatibles, pero el compilador me regresa error. (esto lo habia intentado desde el inicio al declarar la pila pero me lanzaba error, aunque insisto que seria la forma logica de declarar)

NodoPila=RECORD
elemento:integer;
enlace:^NodoPila;
END;

El problema es que al asignar ahi me lanza error y no se de que manera corregirlo, Espero que alguien me pueda ayudar.


Gracias de antemano
(Desve).

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Pila Con Listas Enlazadas
« Respuesta #1 en: Miércoles 30 de Marzo de 2005, 01:35 »
0
Causante del error
Código: Text
  1.  
  2. Cima,AUX:^NodoPila;
  3.  
  4.  

Esto es lo que corrige el Error
Código: Text
  1.  
  2. Cima,AUX: TNodo;
  3.  
  4.  

Código: Text
  1.  
  2. program Project2;
  3.  
  4. {&#036;APPTYPE CONSOLE}
  5. type
  6.   TNodo=^NodoPila;
  7.     NodoPila=RECORD
  8.     Elemento:integer;
  9.     Enlace:TNodo;
  10. end;
  11.  
  12. var
  13.   Cima,AUX: TNodo;
  14.  
  15. begin
  16.   new(Cima);
  17.   new(AUX);
  18.   AUX^.elemento:=10;
  19.   AUX^.enlace:=Cima;
  20.   Cima:=AUX;
  21.  
  22.   WriteLn(AUX^.Elemento ,'  ', Cima^.Elemento);
  23.   ReadLn;
  24. end.
  25.  
  26.  

Asi me compilo de los mas bonito.
Saludos.

Desve

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Pila Con Listas Enlazadas
« Respuesta #2 en: Miércoles 30 de Marzo de 2005, 10:13 »
0
Sip gracias, ahora ke lo veo de esa manera es bastante obvio, pero ya cuando lleva uno un rato programando como ke pierde la nocion de los pekeños errores.

Hasta la prox.