elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
14 Febrero 2012, 03:36  

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  funcion elemento central
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: funcion elemento central  (Leído 809 veces)
mapers


Desconectado Desconectado

Mensajes: 503


Ver Perfil
funcion elemento central
« en: 22 Marzo 2010, 05:12 »

holas gente del foro hace time que publique una funcion que me ayudaran era sobre el elementocentral en una lista enlazada...nadies me respondio  asi que  trate de  crearla pero me sigue botando erores a que se debe........
Código
 
#include<iostream.h>
 
 
struct nodo{
      int numero;
      struct nodo *siguiente;
      };
typedef struct nodo *mapers;
 
void insertaralinicio(mapers &,int );
void invertirlista(mapers &);
void imprimir(mapers &);
int elementocentral(mapers &);
 
 
int elementocentral(mapers &lista)
{
int c=0,i;
mapers t;
while(lista!=NULL)
{
c++;
lista=lista->siguiente;
 
}
cout<<c;
 
if(c%2==0)
{
c=c/2;
}
else
{
c=c+1/2;
}
cout<<c<<endl;
for(i=0;i<=c;i++)
{
cout<<lista->numero<<endl;
lista=lista->siguiente;
}
 
}
 
 
 
void insertaralinicio(mapers &lista,int numero1)
{
mapers q;
q=new(struct nodo);
q->numero=numero1;
q->siguiente=lista;
lista=q;
}
 
void imprimir(mapers &lista)
{
while(lista!=NULL)
{
cout<<lista->numero<<endl;
lista=lista->siguiente;
}
}
 
int main ()
{
mapers lista1,lista2,lista3;
int i,k,n,numero1,numero2;
lista1=lista2=lista3=NULL;
 
 
cout<<"numero de elementos de la lista 1"<<endl;
cin>>k;
 
for(i=0;i<k;i++)
{
cout<<"ingrese elemento"<<endl;
cin>>numero1;
insertaralinicio(lista1,numero1);
}
cout<<"lista 1"<<endl;
imprimir(lista1);
cout<<endl;
cout<<"el elemento central de la lista es :"<<endl;
elementocentral(lista1);
cout<<endl;
system("pause");
 
}
 
 


En línea
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.707


Nie Dam Sie


Ver Perfil WWW
Re: funcion elemento central
« Respuesta #1 en: 22 Marzo 2010, 09:26 »

1) Tenes que postear cuales son los errores que te da el programa. Es necesario para saber, sin necesidad de ver el código detenidamente, por donde puede estar el problema. Esto ya lo tendrías que saber bien. 

2) El código tiene que estar ordenado, en lo posible indentado, y carente de declaraciones innecesarias (variables sin utilizar etc)


Estas son las causas principales por la cual muchos de tus posts quedan sin respuesta, incluyendo el que mencionas, que por cierto es idéntico a este.



Ahora bien, en cuanto a la función del elemento central, a simple vista parece que estas perdiendo la referencia de los elementos y estas pasando un puntero nulo a las funciones. Ademas, también es factible que estés utilizando el mismo puntero luego de haber recorrido la lista hasta el final dejando esa misma referencia en NULL (me pareció ver eso por ahí)

Depura el programa, y si no sabes como, aunque sea pone pausas y evalúa donde el programa produce el error, y ve revisándolo paso a paso y comprobando si las direcciones de los nodos son correctas, y por sobre todo, si la lógica esta bien elaborada (Puedes hacer un diagrama o una prueba de escritorio).

Yo te aconsejaría que replantees el ejercicio. Me da la sensación que no estas entendiendo los parámetros que utilizas.

Saludos


En línea


@NeedOfSecurity

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
mapers


Desconectado Desconectado

Mensajes: 503


Ver Perfil
Re: funcion elemento central
« Respuesta #2 en: 23 Marzo 2010, 06:21 »

la funcion elemento central no recorre la lista  a que se deve  ya lo modifique y no recorre la lista cuando imprime imprime 0
Código
int elementocentral(mapers &lista)
{
int c=0;
mapers p;
p=lista;
if(lista!=NULL)
{
while(p->siguiente!=NULL)
{c++;
p=p->siguiente;
}
}
cout<<c;
}
 
 
En línea
darkraider

Desconectado Desconectado

Mensajes: 229



Ver Perfil
Re: funcion elemento central
« Respuesta #3 en: 23 Marzo 2010, 15:33 »

Macho denserio! Identá sino nadie te va a leer (por lo menos yo)... va con onda
En línea

Curioso de mi...
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 2.938


/^$/


Ver Perfil WWW
Re: funcion elemento central
« Respuesta #4 en: 23 Marzo 2010, 19:09 »

Yo no voy con onda, aprende a escribir, es dificil y molesto leerte.
En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
mapers


Desconectado Desconectado

Mensajes: 503


Ver Perfil
Re: funcion elemento central
« Respuesta #5 en: 25 Marzo 2010, 06:40 »

ya me salio  hay esta la solucion .....
Código
 
#include<iostream.h>
 
 
struct nodo{
      int numero;
      struct nodo *siguiente;
      };
typedef struct nodo *mapers;
 
void insertaralinicio(mapers &,int );
void invertirlista(mapers &);
void elemenetocentral(mapers &);
 
 
void insertaralinicio(mapers &lista,int numero1)
{
mapers q;
q=new(struct nodo);
q->numero=numero1;
q->siguiente=lista;
lista=q;
}
 
void elemenetocentral(mapers &lista,int t)
{
    int n;
for(int i=0;i<=t;i++)
{
n=lista->numero;
lista=lista->siguiente;
}
cout<<n;
}
 
int main ()
{
mapers lista1,lista2,lista3;
int i,k,t,numero1,numero2;
lista1=lista2=lista3=NULL;
 
 
cout<<"numero de elementos de la lista 1"<<endl;
cin>>k;
 
t=k/2;
 
for(i=0;i<k;i++)
{
cout<<"ingrese elemento"<<endl;
cin>>numero1;
insertaralinicio(lista1,numero1);
}
cout<<"lista 1"<<endl;
cout<<"el elemento central de la lista es :"<<endl;
elemenetocentral(lista1,t);
cout<<endl;
cout<<endl;
system("pause");
 
}
 
 


En línea
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.707


Nie Dam Sie


Ver Perfil WWW
Re: funcion elemento central
« Respuesta #6 en: 25 Marzo 2010, 17:35 »

Me alegro que lo hayas solucionado. Acordate que iostream.h es un header antiguo.

Código
#include<iostream>

Saludos
En línea


@NeedOfSecurity

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines