• Viernes 8 de Noviembre de 2024, 17:33

Autor Tema:  Listas Doblemente Encadenadas Circulares  (Leído 1728 veces)

ElNapster

  • Moderador
  • ******
  • Mensajes: 727
    • Ver Perfil
Listas Doblemente Encadenadas Circulares
« en: Martes 23 de Mayo de 2006, 18:20 »
0
Que tal a todos, tengo un problemita con un programita, estoy haciendo un programa con Listas doblemente encadenadas circulares, y solo estoy creando el nodo y la funcion de ingresar datos y desplegar los datos, pero cuando lo corro me da un error, y segun mis copias esta bien pero a lo mejor tengo al malo por ahi el codigo es el siguiente:

#include<iostream.h>
#include<stdio.h>
#include<dos.h>
#include<conio.h>
#include<fstream.h>
#include<string.h>
#include<ctype.h>
#include <time.h>

struct nodo
{
   int t;
   char desc[10];
   nodo *sig,*ant;
};
nodo *lista,*head;

nodo *crear_nuevo(int x)
{
   nodo *nuevo;
   nuevo=new(nodo);
   if (nuevo)
   {
      nuevo->t=x;
      nuevo->sig=nuevo->ant=NULL;
   }
return (nuevo);
}


void insertar(int x)
{
   nodo *nuevo,*ult;
   nuevo=crear_nuevo(x);
   if (lista==NULL)
   {
      lista=nuevo;
   }
   else
   {
       if (lista->ant==NULL)
      {
                ult=lista;
      }
      else
      {
           ult=lista->ant;
      }

      ult->sig=nuevo;
      nuevo->sig=ult; ACA MARCA ERROR
      nuevo->ant=ult;
      ult->ant=nuevo;
   }
   /*else
      cout<<"Memoria insuficiente";
      getch();*/
}


void mostrar(nodo *nodos)
{
   if (nodos)
   {

      if (nodos->sig!=lista)
      {
         cout<<"INGRESADOS "<<nodos->t;
         mostrar(nodos->sig);
      }
   }
}

void main()
{
   insertar(2);
   insertar(5);
   insertar(9);
   mostrar(lista);
   getch();
}


muchas gracias por la ayuda

 :comp:
"Somos lo que imaginamos ser"
-- --------------------------------------------------------------
-ElNapster
-Designer / Developer Software
-GuaTemALa



LeGatoRojo

  • Miembro HIPER activo
  • ****
  • Mensajes: 552
  • Nacionalidad: mx
    • Ver Perfil
    • LeGatoRojo
Re: Listas Doblemente Encadenadas Circulares
« Respuesta #1 en: Miércoles 24 de Mayo de 2006, 08:07 »
0
MMMMMMMM por lo menos di que dice el error  &lt;_&lt;
Un día desperte y en lugar de dientes tenía colmillos, en lugar de manos, tenía garras; pero lo más impactante fue el color escarlata de mi pelaje.

Bicholey

  • Moderador
  • ******
  • Mensajes: 1234
    • Ver Perfil
Re: Listas Doblemente Encadenadas Circulares
« Respuesta #2 en: Miércoles 24 de Mayo de 2006, 15:57 »
0
&lt;_&lt;  &lt;_&lt;
je je je je je en primera no tienes error y el unico error es ponerle en tu codigo "ACA MARCA ERROR " y obviamente entras en un ciclo infinito lo mejor es pensar un poco y no solo copiar del libro.
[size=109]LOS GATOS SIEMPRE CAEMOS DE PIE !!![/size]


Bicholey

  • Moderador
  • ******
  • Mensajes: 1234
    • Ver Perfil
Re: Listas Doblemente Encadenadas Circulares
« Respuesta #3 en: Miércoles 24 de Mayo de 2006, 15:59 »
0
&lt;_&lt;  &lt;_&lt;
Por cierto no somos compiladores.
[size=109]LOS GATOS SIEMPRE CAEMOS DE PIE !!![/size]


ElNapster

  • Moderador
  • ******
  • Mensajes: 727
    • Ver Perfil
Re: Listas Doblemente Encadenadas Circulares
« Respuesta #4 en: Sábado 27 de Mayo de 2006, 16:37 »
0
no, claro que me va a marcar error al poner eso pero les pongo donde me marca el error, es alli donde se posiciona al salir del programa.

 :lol:
"Somos lo que imaginamos ser"
-- --------------------------------------------------------------
-ElNapster
-Designer / Developer Software
-GuaTemALa



Bicholey

  • Moderador
  • ******
  • Mensajes: 1234
    • Ver Perfil
Re: Listas Doblemente Encadenadas Circulares
« Respuesta #5 en: Sábado 27 de Mayo de 2006, 20:36 »
0
&lt;_&lt;
Tambien escribi que estas entrando en un ciclo infinito solo revisalo y veras
[size=109]LOS GATOS SIEMPRE CAEMOS DE PIE !!![/size]