Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 5 votos - 4 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Tu noticia NO importante del día
Autor Mensaje
el pibe Sin conexión
Presidente del CEIT
Benderista
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.235
Agradecimientos dados: 5
Agradecimientos: 115 en 32 posts
Registro en: May 2011
YouTube
Mensaje: #2791
RE: Tu noticia NO importante del día
(03-11-2011 10:38)matyary escribió:  Quedó una obra de arte! Pero no funciona del todo bien...

Spoiler: Mostrar
//Librerías.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//Estructura.
struct nodo
{
char nombre[50];
int socio;
struct nodo *Siguiente;
struct nodo *Anterior;
struct nodo *Inicio;
struct nodo *Fin;
int tam;
};

//Prototipos de las funciones.
int insertar (struct nodo *Lista , char *n, int s);
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2);
int comparar(char *cad1,char *cad2);
void *copiar(struct nodo *Lista, char letra);
int menu (struct nodo *Lista);
void imprimir (struct nodo *Lista);

//---------------------------------------MAIN-------------------------------------------//
int main (void)
{
struct nodo *lista;
lista=malloc(sizeof(struct nodo));
char *nom;
nom=malloc(50);
int opcion=1;
int soc;
int aux;
char *str1, *str2;
char l;

str1=malloc(50);
str1=malloc(50);

//Incicialización de variables.
lista->Inicio=NULL;
lista->Fin=NULL;
lista->tam=0;

while (opcion!=4)
{
opcion=menu(lista);
switch (opcion)
{
case 4:
printf ("\nFin de la ejecución.\n");
exit(-1);
break;
case 0:
printf ("\nIngrese un nombre:");
scanf ("%s",nom);
printf ("\nIngrese nro. de socio:");
scanf ("%d",&soc);
insertar (lista,nom, soc);
imprimir(lista);
printf ("\n%d elementos.\n",lista->tam);
break;
case 1:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
intercambiar (lista,str1,str2);
imprimir (lista);
break;
case 2:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
aux = comparar (str1,str2);
if (aux==0)
printf ("\nCadenas iguales.\n");
if (aux==1)
printf ("\nPrimera cadena mayor.\n");
if (aux==-1)
printf ("\nSegunda cadena mayor.\n");
break;
case 3:
printf ("\nIngrese letra:");
scanf ("%c",&l);
getchar();
copiar (lista,l);
}
}

return 0;
}

//---------------------------------------MENU-------------------------------------------//
int menu (struct nodo *Lista)
{
int eleccion;

if (Lista->tam==0)
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
if (eleccion==1)
eleccion=4; //Para que coincida con el menú de abajo.
}
else
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Intercambiar nodos.\n2-Comparar nodos.\n3-Copiar nodos.\n4-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
}

return eleccion;
}

//---------------------------------INSERTAR NUEVO NODO----------------------------------//
int insertar (struct nodo *Lista , char *n, int s)
{
struct nodo *Nuevo, *Actual;
int insert;
int i=0;

if ( (Nuevo = malloc (sizeof (struct nodo) ) ) == NULL)
return -1;
//if ( (Nuevo->nombre = malloc (sizeof (char *) ) ) == NULL)
//return -1;

for( i=0; *(n+i)!='\0'; i++ )
{
Nuevo->nombre[i] = *(n+i);
}

Nuevo->nombre[i]='\0';
Nuevo->socio=s;

if (Lista->tam==0)
{
Nuevo->Anterior=Lista->Inicio;
Nuevo->Siguiente=Lista->Fin;
Lista->Inicio=Nuevo;
Lista->Fin=Nuevo;
Lista->tam++;
return 0;
}

else //Inserta después del último nodo ingresado.
{
Actual=Lista->Inicio;
while ( Actual->Siguiente != NULL && strcmp(n,Actual->nombre ) !=0 )
Actual=Actual->Siguiente;


Nuevo->Anterior=Actual;
if (Actual->Siguiente==NULL)
Lista->Fin=Nuevo;
else Actual->Siguiente->Anterior=Nuevo;
Actual->Siguiente=Nuevo;
Lista->tam++;
return 0;
}
}

//------------------------------------IMPRIMIR LISTA--------------------------------------//
void imprimir (struct nodo *Lista)
{
struct nodo *Inverso, *Actual;
int choice;

printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n1-Imprimir lista.\n2-Imprimir lista al revés.\n");
printf ("\nOpción:");
scanf ("%d",&choice);

Actual=Lista->Inicio;
printf ("\n----->");

if (choice==1)
{
while (Actual!=NULL)
{
Inverso=Actual;
printf ("Nombre:%s/Socio:%d----->",Actual->nombre,Actual->socio);
Actual=Actual->Siguiente;
}
}

Inverso=Inverso->Anterior; //Porque sino comienza de NULL.
if (choice==2)
{
while (Inverso!=NULL)
{
printf ("Nombre:%s/Socio:%d----->",Inverso->nombre,Inverso->socio);
Inverso=Inverso->Anterior;
}
}
}

//------------------------------------COMPARA NODOS-----------------------------------//
int comparar(char *cad1,char *cad2)
{
int i=0, j=0, aux=0;

for (i=0 ; *(cad1+i)!='\0' ; i++)
for (j=0 ; *(cad2+j)!='\0' ; j++)
{
if (*(cad1+i)==*(cad2+j))
aux=0;
if (*(cad1+i)<*(cad2+j))
aux=-1;
if (*(cad1+i)>*(cad2+j))
aux=1;
}

return aux;
}

//------------------------------------INTERCAMBIA NODOS-------------------------------//
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2)
{
char *auxn1=NULL, *auxn2=NULL;
int auxs1=0, auxs2=0;
struct nodo *Actual, *Aux1, *Aux2;
int i=0;

Aux1 = malloc (sizeof (struct nodo) );
Aux2 = malloc (sizeof (struct nodo) );

auxn1=malloc(50);
auxn2=malloc(50);

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena1)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn1=Actual->nombre;
auxs1=Actual->socio;
Aux1=Actual;
break;
}
Actual=Actual->Siguiente;
}

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena2)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn2=Actual->nombre;
auxs2=Actual->socio;
Aux2=Actual;
break;
}
Actual=Actual->Siguiente;
}

if (Aux1==NULL || Aux2==NULL)
return NULL;

printf ("\n%s",auxn1);
printf ("\n%s",auxn2);

printf ("\n%d",auxs1);
printf ("\n%d",auxs2);

//Intercambia información entre nodos:
for( i=0; *(auxn2+i)!='\0'; i++ )
Aux1->nombre[i]=*(auxn2+i);
Aux1->socio=auxs2;
for( i=0; *(auxn1+i)!='\0'; i++ )
Aux2->nombre[i]=*(auxn1+i);
Aux2->socio=auxs1;

return Lista->Inicio;
}

//-------------------------------------ARRAY DE NODOS---------------------------------//
void *copiar(struct nodo *Lista, char letra)
{
struct nodo *Actual;
int i=0;
char *p[Lista->tam];

Actual=Lista->Inicio;
printf("\n----->");
while (Actual!=NULL)
{
if (Actual->nombre[0] == letra)
{
p[i]=Actual->nombre;
printf ("%s----->",p[i]);
i++;
}
Actual=Actual->Siguiente;
}
}

en estos momentos un troll te diria "te dije que eso explotaba en la estructura y en las funciones" Trollface

pero como no soy troll (?): che, que lastima, venias bien, ojala que encuentres el error Carucha

[Imagen: tolivi10.jpg]
2 Veces congresista por eArgentina
13 Veces congresista por eBolivia
1 Vez Emperador por eBolivia
Ex-Ministro de Salud eArgentino

[Imagen: Necromancer616.png]
03-11-2011 11:16
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
matyary Sin conexión
Presidente del CEIT
SORPRENDEME!
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.809
Agradecimientos dados: 68
Agradecimientos: 342 en 83 posts
Registro en: Mar 2011
Mensaje: #2792
RE: Tu noticia NO importante del día
(03-11-2011 11:16)el pibe escribió:  
(03-11-2011 10:38)matyary escribió:  Quedó una obra de arte! Pero no funciona del todo bien...

Spoiler: Mostrar
//Librerías.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//Estructura.
struct nodo
{
char nombre[50];
int socio;
struct nodo *Siguiente;
struct nodo *Anterior;
struct nodo *Inicio;
struct nodo *Fin;
int tam;
};

//Prototipos de las funciones.
int insertar (struct nodo *Lista , char *n, int s);
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2);
int comparar(char *cad1,char *cad2);
void *copiar(struct nodo *Lista, char letra);
int menu (struct nodo *Lista);
void imprimir (struct nodo *Lista);

//---------------------------------------MAIN-------------------------------------------//
int main (void)
{
struct nodo *lista;
lista=malloc(sizeof(struct nodo));
char *nom;
nom=malloc(50);
int opcion=1;
int soc;
int aux;
char *str1, *str2;
char l;

str1=malloc(50);
str1=malloc(50);

//Incicialización de variables.
lista->Inicio=NULL;
lista->Fin=NULL;
lista->tam=0;

while (opcion!=4)
{
opcion=menu(lista);
switch (opcion)
{
case 4:
printf ("\nFin de la ejecución.\n");
exit(-1);
break;
case 0:
printf ("\nIngrese un nombre:");
scanf ("%s",nom);
printf ("\nIngrese nro. de socio:");
scanf ("%d",&soc);
insertar (lista,nom, soc);
imprimir(lista);
printf ("\n%d elementos.\n",lista->tam);
break;
case 1:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
intercambiar (lista,str1,str2);
imprimir (lista);
break;
case 2:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
aux = comparar (str1,str2);
if (aux==0)
printf ("\nCadenas iguales.\n");
if (aux==1)
printf ("\nPrimera cadena mayor.\n");
if (aux==-1)
printf ("\nSegunda cadena mayor.\n");
break;
case 3:
printf ("\nIngrese letra:");
scanf ("%c",&l);
getchar();
copiar (lista,l);
}
}

return 0;
}

//---------------------------------------MENU-------------------------------------------//
int menu (struct nodo *Lista)
{
int eleccion;

if (Lista->tam==0)
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
if (eleccion==1)
eleccion=4; //Para que coincida con el menú de abajo.
}
else
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Intercambiar nodos.\n2-Comparar nodos.\n3-Copiar nodos.\n4-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
}

return eleccion;
}

//---------------------------------INSERTAR NUEVO NODO----------------------------------//
int insertar (struct nodo *Lista , char *n, int s)
{
struct nodo *Nuevo, *Actual;
int insert;
int i=0;

if ( (Nuevo = malloc (sizeof (struct nodo) ) ) == NULL)
return -1;
//if ( (Nuevo->nombre = malloc (sizeof (char *) ) ) == NULL)
//return -1;

for( i=0; *(n+i)!='\0'; i++ )
{
Nuevo->nombre[i] = *(n+i);
}

Nuevo->nombre[i]='\0';
Nuevo->socio=s;

if (Lista->tam==0)
{
Nuevo->Anterior=Lista->Inicio;
Nuevo->Siguiente=Lista->Fin;
Lista->Inicio=Nuevo;
Lista->Fin=Nuevo;
Lista->tam++;
return 0;
}

else //Inserta después del último nodo ingresado.
{
Actual=Lista->Inicio;
while ( Actual->Siguiente != NULL && strcmp(n,Actual->nombre ) !=0 )
Actual=Actual->Siguiente;


Nuevo->Anterior=Actual;
if (Actual->Siguiente==NULL)
Lista->Fin=Nuevo;
else Actual->Siguiente->Anterior=Nuevo;
Actual->Siguiente=Nuevo;
Lista->tam++;
return 0;
}
}

//------------------------------------IMPRIMIR LISTA--------------------------------------//
void imprimir (struct nodo *Lista)
{
struct nodo *Inverso, *Actual;
int choice;

printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n1-Imprimir lista.\n2-Imprimir lista al revés.\n");
printf ("\nOpción:");
scanf ("%d",&choice);

Actual=Lista->Inicio;
printf ("\n----->");

if (choice==1)
{
while (Actual!=NULL)
{
Inverso=Actual;
printf ("Nombre:%s/Socio:%d----->",Actual->nombre,Actual->socio);
Actual=Actual->Siguiente;
}
}

Inverso=Inverso->Anterior; //Porque sino comienza de NULL.
if (choice==2)
{
while (Inverso!=NULL)
{
printf ("Nombre:%s/Socio:%d----->",Inverso->nombre,Inverso->socio);
Inverso=Inverso->Anterior;
}
}
}

//------------------------------------COMPARA NODOS-----------------------------------//
int comparar(char *cad1,char *cad2)
{
int i=0, j=0, aux=0;

for (i=0 ; *(cad1+i)!='\0' ; i++)
for (j=0 ; *(cad2+j)!='\0' ; j++)
{
if (*(cad1+i)==*(cad2+j))
aux=0;
if (*(cad1+i)<*(cad2+j))
aux=-1;
if (*(cad1+i)>*(cad2+j))
aux=1;
}

return aux;
}

//------------------------------------INTERCAMBIA NODOS-------------------------------//
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2)
{
char *auxn1=NULL, *auxn2=NULL;
int auxs1=0, auxs2=0;
struct nodo *Actual, *Aux1, *Aux2;
int i=0;

Aux1 = malloc (sizeof (struct nodo) );
Aux2 = malloc (sizeof (struct nodo) );

auxn1=malloc(50);
auxn2=malloc(50);

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena1)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn1=Actual->nombre;
auxs1=Actual->socio;
Aux1=Actual;
break;
}
Actual=Actual->Siguiente;
}

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena2)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn2=Actual->nombre;
auxs2=Actual->socio;
Aux2=Actual;
break;
}
Actual=Actual->Siguiente;
}

if (Aux1==NULL || Aux2==NULL)
return NULL;

printf ("\n%s",auxn1);
printf ("\n%s",auxn2);

printf ("\n%d",auxs1);
printf ("\n%d",auxs2);

//Intercambia información entre nodos:
for( i=0; *(auxn2+i)!='\0'; i++ )
Aux1->nombre[i]=*(auxn2+i);
Aux1->socio=auxs2;
for( i=0; *(auxn1+i)!='\0'; i++ )
Aux2->nombre[i]=*(auxn1+i);
Aux2->socio=auxs1;

return Lista->Inicio;
}

//-------------------------------------ARRAY DE NODOS---------------------------------//
void *copiar(struct nodo *Lista, char letra)
{
struct nodo *Actual;
int i=0;
char *p[Lista->tam];

Actual=Lista->Inicio;
printf("\n----->");
while (Actual!=NULL)
{
if (Actual->nombre[0] == letra)
{
p[i]=Actual->nombre;
printf ("%s----->",p[i]);
i++;
}
Actual=Actual->Siguiente;
}
}

en estos momentos un troll te diria "te dije que eso explotaba en la estructura y en las funciones" Trollface

pero como no soy troll (?): che, que lastima, venias bien, ojala que encuentres el error Carucha

Off-topic:
Es lo que me tomaron en el parcial, si lo hago funcionar en la compu tengo más chances de aprobar... pero la mierda esta no quiero hacer lo que yo le digo, me retorna moco (?)

\[\sqrt{-1} \;\; 2^3 \;\; \sum \;\; \pi\]
... and it was good!


Mi web: Von Hexlein
03-11-2011 11:50
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
el pibe Sin conexión
Presidente del CEIT
Benderista
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.235
Agradecimientos dados: 5
Agradecimientos: 115 en 32 posts
Registro en: May 2011
YouTube
Mensaje: #2793
RE: Tu noticia NO importante del día
(03-11-2011 11:50)matyary escribió:  
(03-11-2011 11:16)el pibe escribió:  
(03-11-2011 10:38)matyary escribió:  Quedó una obra de arte! Pero no funciona del todo bien...

Spoiler: Mostrar
//Librerías.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//Estructura.
struct nodo
{
char nombre[50];
int socio;
struct nodo *Siguiente;
struct nodo *Anterior;
struct nodo *Inicio;
struct nodo *Fin;
int tam;
};

//Prototipos de las funciones.
int insertar (struct nodo *Lista , char *n, int s);
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2);
int comparar(char *cad1,char *cad2);
void *copiar(struct nodo *Lista, char letra);
int menu (struct nodo *Lista);
void imprimir (struct nodo *Lista);

//---------------------------------------MAIN-------------------------------------------//
int main (void)
{
struct nodo *lista;
lista=malloc(sizeof(struct nodo));
char *nom;
nom=malloc(50);
int opcion=1;
int soc;
int aux;
char *str1, *str2;
char l;

str1=malloc(50);
str1=malloc(50);

//Incicialización de variables.
lista->Inicio=NULL;
lista->Fin=NULL;
lista->tam=0;

while (opcion!=4)
{
opcion=menu(lista);
switch (opcion)
{
case 4:
printf ("\nFin de la ejecución.\n");
exit(-1);
break;
case 0:
printf ("\nIngrese un nombre:");
scanf ("%s",nom);
printf ("\nIngrese nro. de socio:");
scanf ("%d",&soc);
insertar (lista,nom, soc);
imprimir(lista);
printf ("\n%d elementos.\n",lista->tam);
break;
case 1:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
intercambiar (lista,str1,str2);
imprimir (lista);
break;
case 2:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
aux = comparar (str1,str2);
if (aux==0)
printf ("\nCadenas iguales.\n");
if (aux==1)
printf ("\nPrimera cadena mayor.\n");
if (aux==-1)
printf ("\nSegunda cadena mayor.\n");
break;
case 3:
printf ("\nIngrese letra:");
scanf ("%c",&l);
getchar();
copiar (lista,l);
}
}

return 0;
}

//---------------------------------------MENU-------------------------------------------//
int menu (struct nodo *Lista)
{
int eleccion;

if (Lista->tam==0)
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
if (eleccion==1)
eleccion=4; //Para que coincida con el menú de abajo.
}
else
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Intercambiar nodos.\n2-Comparar nodos.\n3-Copiar nodos.\n4-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
}

return eleccion;
}

//---------------------------------INSERTAR NUEVO NODO----------------------------------//
int insertar (struct nodo *Lista , char *n, int s)
{
struct nodo *Nuevo, *Actual;
int insert;
int i=0;

if ( (Nuevo = malloc (sizeof (struct nodo) ) ) == NULL)
return -1;
//if ( (Nuevo->nombre = malloc (sizeof (char *) ) ) == NULL)
//return -1;

for( i=0; *(n+i)!='\0'; i++ )
{
Nuevo->nombre[i] = *(n+i);
}

Nuevo->nombre[i]='\0';
Nuevo->socio=s;

if (Lista->tam==0)
{
Nuevo->Anterior=Lista->Inicio;
Nuevo->Siguiente=Lista->Fin;
Lista->Inicio=Nuevo;
Lista->Fin=Nuevo;
Lista->tam++;
return 0;
}

else //Inserta después del último nodo ingresado.
{
Actual=Lista->Inicio;
while ( Actual->Siguiente != NULL && strcmp(n,Actual->nombre ) !=0 )
Actual=Actual->Siguiente;


Nuevo->Anterior=Actual;
if (Actual->Siguiente==NULL)
Lista->Fin=Nuevo;
else Actual->Siguiente->Anterior=Nuevo;
Actual->Siguiente=Nuevo;
Lista->tam++;
return 0;
}
}

//------------------------------------IMPRIMIR LISTA--------------------------------------//
void imprimir (struct nodo *Lista)
{
struct nodo *Inverso, *Actual;
int choice;

printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n1-Imprimir lista.\n2-Imprimir lista al revés.\n");
printf ("\nOpción:");
scanf ("%d",&choice);

Actual=Lista->Inicio;
printf ("\n----->");

if (choice==1)
{
while (Actual!=NULL)
{
Inverso=Actual;
printf ("Nombre:%s/Socio:%d----->",Actual->nombre,Actual->socio);
Actual=Actual->Siguiente;
}
}

Inverso=Inverso->Anterior; //Porque sino comienza de NULL.
if (choice==2)
{
while (Inverso!=NULL)
{
printf ("Nombre:%s/Socio:%d----->",Inverso->nombre,Inverso->socio);
Inverso=Inverso->Anterior;
}
}
}

//------------------------------------COMPARA NODOS-----------------------------------//
int comparar(char *cad1,char *cad2)
{
int i=0, j=0, aux=0;

for (i=0 ; *(cad1+i)!='\0' ; i++)
for (j=0 ; *(cad2+j)!='\0' ; j++)
{
if (*(cad1+i)==*(cad2+j))
aux=0;
if (*(cad1+i)<*(cad2+j))
aux=-1;
if (*(cad1+i)>*(cad2+j))
aux=1;
}

return aux;
}

//------------------------------------INTERCAMBIA NODOS-------------------------------//
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2)
{
char *auxn1=NULL, *auxn2=NULL;
int auxs1=0, auxs2=0;
struct nodo *Actual, *Aux1, *Aux2;
int i=0;

Aux1 = malloc (sizeof (struct nodo) );
Aux2 = malloc (sizeof (struct nodo) );

auxn1=malloc(50);
auxn2=malloc(50);

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena1)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn1=Actual->nombre;
auxs1=Actual->socio;
Aux1=Actual;
break;
}
Actual=Actual->Siguiente;
}

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena2)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn2=Actual->nombre;
auxs2=Actual->socio;
Aux2=Actual;
break;
}
Actual=Actual->Siguiente;
}

if (Aux1==NULL || Aux2==NULL)
return NULL;

printf ("\n%s",auxn1);
printf ("\n%s",auxn2);

printf ("\n%d",auxs1);
printf ("\n%d",auxs2);

//Intercambia información entre nodos:
for( i=0; *(auxn2+i)!='\0'; i++ )
Aux1->nombre[i]=*(auxn2+i);
Aux1->socio=auxs2;
for( i=0; *(auxn1+i)!='\0'; i++ )
Aux2->nombre[i]=*(auxn1+i);
Aux2->socio=auxs1;

return Lista->Inicio;
}

//-------------------------------------ARRAY DE NODOS---------------------------------//
void *copiar(struct nodo *Lista, char letra)
{
struct nodo *Actual;
int i=0;
char *p[Lista->tam];

Actual=Lista->Inicio;
printf("\n----->");
while (Actual!=NULL)
{
if (Actual->nombre[0] == letra)
{
p[i]=Actual->nombre;
printf ("%s----->",p[i]);
i++;
}
Actual=Actual->Siguiente;
}
}

en estos momentos un troll te diria "te dije que eso explotaba en la estructura y en las funciones" Trollface

pero como no soy troll (?): che, que lastima, venias bien, ojala que encuentres el error Carucha

Off-topic:
Es lo que me tomaron en el parcial, si lo hago funcionar en la compu tengo más chances de aprobar... pero la mierda esta no quiero hacer lo que yo le digo, me retorna moco (?)

es que esta mal declarada la escructura y cuando mandas y recibis los parametros en las funciones =P

[Imagen: tolivi10.jpg]
2 Veces congresista por eArgentina
13 Veces congresista por eBolivia
1 Vez Emperador por eBolivia
Ex-Ministro de Salud eArgentino

[Imagen: Necromancer616.png]
03-11-2011 11:57
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 889 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #2794
RE: Tu noticia NO importante del día
primer debuggeo en visual studio 2010 (!)

[Imagen: v34BEFt.gif]
03-11-2011 12:14
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
matyary Sin conexión
Presidente del CEIT
SORPRENDEME!
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.809
Agradecimientos dados: 68
Agradecimientos: 342 en 83 posts
Registro en: Mar 2011
Mensaje: #2795
RE: Tu noticia NO importante del día
(03-11-2011 11:57)el pibe escribió:  
(03-11-2011 11:50)matyary escribió:  
(03-11-2011 11:16)el pibe escribió:  
(03-11-2011 10:38)matyary escribió:  Quedó una obra de arte! Pero no funciona del todo bien...

Spoiler: Mostrar
//Librerías.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//Estructura.
struct nodo
{
char nombre[50];
int socio;
struct nodo *Siguiente;
struct nodo *Anterior;
struct nodo *Inicio;
struct nodo *Fin;
int tam;
};

//Prototipos de las funciones.
int insertar (struct nodo *Lista , char *n, int s);
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2);
int comparar(char *cad1,char *cad2);
void *copiar(struct nodo *Lista, char letra);
int menu (struct nodo *Lista);
void imprimir (struct nodo *Lista);

//---------------------------------------MAIN-------------------------------------------//
int main (void)
{
struct nodo *lista;
lista=malloc(sizeof(struct nodo));
char *nom;
nom=malloc(50);
int opcion=1;
int soc;
int aux;
char *str1, *str2;
char l;

str1=malloc(50);
str1=malloc(50);

//Incicialización de variables.
lista->Inicio=NULL;
lista->Fin=NULL;
lista->tam=0;

while (opcion!=4)
{
opcion=menu(lista);
switch (opcion)
{
case 4:
printf ("\nFin de la ejecución.\n");
exit(-1);
break;
case 0:
printf ("\nIngrese un nombre:");
scanf ("%s",nom);
printf ("\nIngrese nro. de socio:");
scanf ("%d",&soc);
insertar (lista,nom, soc);
imprimir(lista);
printf ("\n%d elementos.\n",lista->tam);
break;
case 1:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
intercambiar (lista,str1,str2);
imprimir (lista);
break;
case 2:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
aux = comparar (str1,str2);
if (aux==0)
printf ("\nCadenas iguales.\n");
if (aux==1)
printf ("\nPrimera cadena mayor.\n");
if (aux==-1)
printf ("\nSegunda cadena mayor.\n");
break;
case 3:
printf ("\nIngrese letra:");
scanf ("%c",&l);
getchar();
copiar (lista,l);
}
}

return 0;
}

//---------------------------------------MENU-------------------------------------------//
int menu (struct nodo *Lista)
{
int eleccion;

if (Lista->tam==0)
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
if (eleccion==1)
eleccion=4; //Para que coincida con el menú de abajo.
}
else
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Intercambiar nodos.\n2-Comparar nodos.\n3-Copiar nodos.\n4-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
}

return eleccion;
}

//---------------------------------INSERTAR NUEVO NODO----------------------------------//
int insertar (struct nodo *Lista , char *n, int s)
{
struct nodo *Nuevo, *Actual;
int insert;
int i=0;

if ( (Nuevo = malloc (sizeof (struct nodo) ) ) == NULL)
return -1;
//if ( (Nuevo->nombre = malloc (sizeof (char *) ) ) == NULL)
//return -1;

for( i=0; *(n+i)!='\0'; i++ )
{
Nuevo->nombre[i] = *(n+i);
}

Nuevo->nombre[i]='\0';
Nuevo->socio=s;

if (Lista->tam==0)
{
Nuevo->Anterior=Lista->Inicio;
Nuevo->Siguiente=Lista->Fin;
Lista->Inicio=Nuevo;
Lista->Fin=Nuevo;
Lista->tam++;
return 0;
}

else //Inserta después del último nodo ingresado.
{
Actual=Lista->Inicio;
while ( Actual->Siguiente != NULL && strcmp(n,Actual->nombre ) !=0 )
Actual=Actual->Siguiente;


Nuevo->Anterior=Actual;
if (Actual->Siguiente==NULL)
Lista->Fin=Nuevo;
else Actual->Siguiente->Anterior=Nuevo;
Actual->Siguiente=Nuevo;
Lista->tam++;
return 0;
}
}

//------------------------------------IMPRIMIR LISTA--------------------------------------//
void imprimir (struct nodo *Lista)
{
struct nodo *Inverso, *Actual;
int choice;

printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n1-Imprimir lista.\n2-Imprimir lista al revés.\n");
printf ("\nOpción:");
scanf ("%d",&choice);

Actual=Lista->Inicio;
printf ("\n----->");

if (choice==1)
{
while (Actual!=NULL)
{
Inverso=Actual;
printf ("Nombre:%s/Socio:%d----->",Actual->nombre,Actual->socio);
Actual=Actual->Siguiente;
}
}

Inverso=Inverso->Anterior; //Porque sino comienza de NULL.
if (choice==2)
{
while (Inverso!=NULL)
{
printf ("Nombre:%s/Socio:%d----->",Inverso->nombre,Inverso->socio);
Inverso=Inverso->Anterior;
}
}
}

//------------------------------------COMPARA NODOS-----------------------------------//
int comparar(char *cad1,char *cad2)
{
int i=0, j=0, aux=0;

for (i=0 ; *(cad1+i)!='\0' ; i++)
for (j=0 ; *(cad2+j)!='\0' ; j++)
{
if (*(cad1+i)==*(cad2+j))
aux=0;
if (*(cad1+i)<*(cad2+j))
aux=-1;
if (*(cad1+i)>*(cad2+j))
aux=1;
}

return aux;
}

//------------------------------------INTERCAMBIA NODOS-------------------------------//
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2)
{
char *auxn1=NULL, *auxn2=NULL;
int auxs1=0, auxs2=0;
struct nodo *Actual, *Aux1, *Aux2;
int i=0;

Aux1 = malloc (sizeof (struct nodo) );
Aux2 = malloc (sizeof (struct nodo) );

auxn1=malloc(50);
auxn2=malloc(50);

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena1)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn1=Actual->nombre;
auxs1=Actual->socio;
Aux1=Actual;
break;
}
Actual=Actual->Siguiente;
}

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena2)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn2=Actual->nombre;
auxs2=Actual->socio;
Aux2=Actual;
break;
}
Actual=Actual->Siguiente;
}

if (Aux1==NULL || Aux2==NULL)
return NULL;

printf ("\n%s",auxn1);
printf ("\n%s",auxn2);

printf ("\n%d",auxs1);
printf ("\n%d",auxs2);

//Intercambia información entre nodos:
for( i=0; *(auxn2+i)!='\0'; i++ )
Aux1->nombre[i]=*(auxn2+i);
Aux1->socio=auxs2;
for( i=0; *(auxn1+i)!='\0'; i++ )
Aux2->nombre[i]=*(auxn1+i);
Aux2->socio=auxs1;

return Lista->Inicio;
}

//-------------------------------------ARRAY DE NODOS---------------------------------//
void *copiar(struct nodo *Lista, char letra)
{
struct nodo *Actual;
int i=0;
char *p[Lista->tam];

Actual=Lista->Inicio;
printf("\n----->");
while (Actual!=NULL)
{
if (Actual->nombre[0] == letra)
{
p[i]=Actual->nombre;
printf ("%s----->",p[i]);
i++;
}
Actual=Actual->Siguiente;
}
}

en estos momentos un troll te diria "te dije que eso explotaba en la estructura y en las funciones" Trollface

pero como no soy troll (?): che, que lastima, venias bien, ojala que encuentres el error Carucha

Off-topic:
Es lo que me tomaron en el parcial, si lo hago funcionar en la compu tengo más chances de aprobar... pero la mierda esta no quiero hacer lo que yo le digo, me retorna moco (?)

es que esta mal declarada la escructura y cuando mandas y recibis los parametros en las funciones =P


Off-topic:
Ojo que eso está bien, al compilar no tira ningún error ni warning. Lo que está mal es el algoritmo de las funciones intercambiar y copiar (no hace lo que yo quiero).

\[\sqrt{-1} \;\; 2^3 \;\; \sum \;\; \pi\]
... and it was good!


Mi web: Von Hexlein
03-11-2011 12:55
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Cheppak Sin conexión
Secretario General
-
*******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 950
Agradecimientos dados: 41
Agradecimientos: 122 en 43 posts
Registro en: May 2009
Mensaje: #2796
RE: Tu noticia NO importante del día
Tengo un pasaje el 10 de Diciembre wall thumbdown
Y los finales ? jaja =P
03-11-2011 12:59
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
rulo Sin conexión
Ultra Nerd Mod
By demons driven!
*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 4.333
Agradecimientos dados: 51
Agradecimientos: 67 en 37 posts
Registro en: Apr 2009
BlogSpot
Mensaje: #2797
RE: Tu noticia NO importante del día
Me sale todo al reves.La reputisima...

Cita:Absolve me, save my reign
Have you forgotten me?
03-11-2011 18:45
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
matyary Sin conexión
Presidente del CEIT
SORPRENDEME!
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.809
Agradecimientos dados: 68
Agradecimientos: 342 en 83 posts
Registro en: Mar 2011
Mensaje: #2798
RE: Tu noticia NO importante del día
(03-11-2011 18:45)rulo escribió:  Me sale todo al reves.La reputisima...


Off-topic:
Caminá con las manos, cabeza hacia abajo... vas a ver como te empiezan a salir las cosas.


Estoy empezando a "entender" probabilidad, al menos me salen los ejercicios =)

\[\sqrt{-1} \;\; 2^3 \;\; \sum \;\; \pi\]
... and it was good!


Mi web: Von Hexlein
03-11-2011 19:15
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
el pibe Sin conexión
Presidente del CEIT
Benderista
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.235
Agradecimientos dados: 5
Agradecimientos: 115 en 32 posts
Registro en: May 2011
YouTube
Mensaje: #2799
RE: Tu noticia NO importante del día
(03-11-2011 12:55)matyary escribió:  
(03-11-2011 11:57)el pibe escribió:  
(03-11-2011 11:50)matyary escribió:  
(03-11-2011 11:16)el pibe escribió:  
(03-11-2011 10:38)matyary escribió:  Quedó una obra de arte! Pero no funciona del todo bien...

Spoiler: Mostrar
//Librerías.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//Estructura.
struct nodo
{
char nombre[50];
int socio;
struct nodo *Siguiente;
struct nodo *Anterior;
struct nodo *Inicio;
struct nodo *Fin;
int tam;
};

//Prototipos de las funciones.
int insertar (struct nodo *Lista , char *n, int s);
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2);
int comparar(char *cad1,char *cad2);
void *copiar(struct nodo *Lista, char letra);
int menu (struct nodo *Lista);
void imprimir (struct nodo *Lista);

//---------------------------------------MAIN-------------------------------------------//
int main (void)
{
struct nodo *lista;
lista=malloc(sizeof(struct nodo));
char *nom;
nom=malloc(50);
int opcion=1;
int soc;
int aux;
char *str1, *str2;
char l;

str1=malloc(50);
str1=malloc(50);

//Incicialización de variables.
lista->Inicio=NULL;
lista->Fin=NULL;
lista->tam=0;

while (opcion!=4)
{
opcion=menu(lista);
switch (opcion)
{
case 4:
printf ("\nFin de la ejecución.\n");
exit(-1);
break;
case 0:
printf ("\nIngrese un nombre:");
scanf ("%s",nom);
printf ("\nIngrese nro. de socio:");
scanf ("%d",&soc);
insertar (lista,nom, soc);
imprimir(lista);
printf ("\n%d elementos.\n",lista->tam);
break;
case 1:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
intercambiar (lista,str1,str2);
imprimir (lista);
break;
case 2:
printf ("\nIngrese primer nombre:");
scanf ("%s",str1);
printf ("\nIngrese segundo nombre:");
scanf ("%s",str2);
aux = comparar (str1,str2);
if (aux==0)
printf ("\nCadenas iguales.\n");
if (aux==1)
printf ("\nPrimera cadena mayor.\n");
if (aux==-1)
printf ("\nSegunda cadena mayor.\n");
break;
case 3:
printf ("\nIngrese letra:");
scanf ("%c",&l);
getchar();
copiar (lista,l);
}
}

return 0;
}

//---------------------------------------MENU-------------------------------------------//
int menu (struct nodo *Lista)
{
int eleccion;

if (Lista->tam==0)
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
if (eleccion==1)
eleccion=4; //Para que coincida con el menú de abajo.
}
else
{
printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n0-Insertar elemento.\n1-Intercambiar nodos.\n2-Comparar nodos.\n3-Copiar nodos.\n4-Salir.\n");
printf ("\nOpción:");
scanf ("%d",&eleccion);
}

return eleccion;
}

//---------------------------------INSERTAR NUEVO NODO----------------------------------//
int insertar (struct nodo *Lista , char *n, int s)
{
struct nodo *Nuevo, *Actual;
int insert;
int i=0;

if ( (Nuevo = malloc (sizeof (struct nodo) ) ) == NULL)
return -1;
//if ( (Nuevo->nombre = malloc (sizeof (char *) ) ) == NULL)
//return -1;

for( i=0; *(n+i)!='\0'; i++ )
{
Nuevo->nombre[i] = *(n+i);
}

Nuevo->nombre[i]='\0';
Nuevo->socio=s;

if (Lista->tam==0)
{
Nuevo->Anterior=Lista->Inicio;
Nuevo->Siguiente=Lista->Fin;
Lista->Inicio=Nuevo;
Lista->Fin=Nuevo;
Lista->tam++;
return 0;
}

else //Inserta después del último nodo ingresado.
{
Actual=Lista->Inicio;
while ( Actual->Siguiente != NULL && strcmp(n,Actual->nombre ) !=0 )
Actual=Actual->Siguiente;


Nuevo->Anterior=Actual;
if (Actual->Siguiente==NULL)
Lista->Fin=Nuevo;
else Actual->Siguiente->Anterior=Nuevo;
Actual->Siguiente=Nuevo;
Lista->tam++;
return 0;
}
}

//------------------------------------IMPRIMIR LISTA--------------------------------------//
void imprimir (struct nodo *Lista)
{
struct nodo *Inverso, *Actual;
int choice;

printf ("\nElija una de las opciones que aparecen en pantalla:\n");
printf ("\n1-Imprimir lista.\n2-Imprimir lista al revés.\n");
printf ("\nOpción:");
scanf ("%d",&choice);

Actual=Lista->Inicio;
printf ("\n----->");

if (choice==1)
{
while (Actual!=NULL)
{
Inverso=Actual;
printf ("Nombre:%s/Socio:%d----->",Actual->nombre,Actual->socio);
Actual=Actual->Siguiente;
}
}

Inverso=Inverso->Anterior; //Porque sino comienza de NULL.
if (choice==2)
{
while (Inverso!=NULL)
{
printf ("Nombre:%s/Socio:%d----->",Inverso->nombre,Inverso->socio);
Inverso=Inverso->Anterior;
}
}
}

//------------------------------------COMPARA NODOS-----------------------------------//
int comparar(char *cad1,char *cad2)
{
int i=0, j=0, aux=0;

for (i=0 ; *(cad1+i)!='\0' ; i++)
for (j=0 ; *(cad2+j)!='\0' ; j++)
{
if (*(cad1+i)==*(cad2+j))
aux=0;
if (*(cad1+i)<*(cad2+j))
aux=-1;
if (*(cad1+i)>*(cad2+j))
aux=1;
}

return aux;
}

//------------------------------------INTERCAMBIA NODOS-------------------------------//
struct nodo *intercambiar (struct nodo *Lista, char *cadena1, char *cadena2)
{
char *auxn1=NULL, *auxn2=NULL;
int auxs1=0, auxs2=0;
struct nodo *Actual, *Aux1, *Aux2;
int i=0;

Aux1 = malloc (sizeof (struct nodo) );
Aux2 = malloc (sizeof (struct nodo) );

auxn1=malloc(50);
auxn2=malloc(50);

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena1)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn1=Actual->nombre;
auxs1=Actual->socio;
Aux1=Actual;
break;
}
Actual=Actual->Siguiente;
}

Actual=Lista->Inicio;
while (Actual!=NULL)
{
if (comparar (Actual->nombre,cadena2)==0) //Al ser 0, quiere decir que las cadenas son iguales.
{
//Copia información del nodo Actual (nombre y socio) en variables auxiliares.
auxn2=Actual->nombre;
auxs2=Actual->socio;
Aux2=Actual;
break;
}
Actual=Actual->Siguiente;
}

if (Aux1==NULL || Aux2==NULL)
return NULL;

printf ("\n%s",auxn1);
printf ("\n%s",auxn2);

printf ("\n%d",auxs1);
printf ("\n%d",auxs2);

//Intercambia información entre nodos:
for( i=0; *(auxn2+i)!='\0'; i++ )
Aux1->nombre[i]=*(auxn2+i);
Aux1->socio=auxs2;
for( i=0; *(auxn1+i)!='\0'; i++ )
Aux2->nombre[i]=*(auxn1+i);
Aux2->socio=auxs1;

return Lista->Inicio;
}

//-------------------------------------ARRAY DE NODOS---------------------------------//
void *copiar(struct nodo *Lista, char letra)
{
struct nodo *Actual;
int i=0;
char *p[Lista->tam];

Actual=Lista->Inicio;
printf("\n----->");
while (Actual!=NULL)
{
if (Actual->nombre[0] == letra)
{
p[i]=Actual->nombre;
printf ("%s----->",p[i]);
i++;
}
Actual=Actual->Siguiente;
}
}

en estos momentos un troll te diria "te dije que eso explotaba en la estructura y en las funciones" Trollface

pero como no soy troll (?): che, que lastima, venias bien, ojala que encuentres el error Carucha

Off-topic:
Es lo que me tomaron en el parcial, si lo hago funcionar en la compu tengo más chances de aprobar... pero la mierda esta no quiero hacer lo que yo le digo, me retorna moco (?)

es que esta mal declarada la escructura y cuando mandas y recibis los parametros en las funciones =P


Off-topic:
Ojo que eso está bien, al compilar no tira ningún error ni warning. Lo que está mal es el algoritmo de las funciones intercambiar y copiar (no hace lo que yo quiero).


Off-topic:
no, no es error de sintaxis.
un ejemplo, cuando pasas la "lista" como parametro de una funcion, te falta el "&" para marcar que es la direccion de memoria y que va por referencia

pero bueno, si vos decis que es un tema del algoritmo, todo vale. yo descubri que no todos los compiladores aceptan ciertos comandos.

[Imagen: tolivi10.jpg]
2 Veces congresista por eArgentina
13 Veces congresista por eBolivia
1 Vez Emperador por eBolivia
Ex-Ministro de Salud eArgentino

[Imagen: Necromancer616.png]
03-11-2011 19:28
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
mardo182 Sin conexión
Presidente del CEIT
1050 N
********

Ing. Eléctrica
Facultad Regional Buenos Aires

Mensajes: 3.644
Agradecimientos dados: 296
Agradecimientos: 29 en 27 posts
Registro en: Apr 2011
Mensaje: #2800
RE: Tu noticia NO importante del día
hoy juego al padel
03-11-2011 20:02
Envíale un email Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Feer Sin conexión
Presidente del CEIT
Ing. Electrónico
**********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 4.672
Agradecimientos dados: 601
Agradecimientos: 2.973 en 451 posts
Registro en: Apr 2010
Mensaje: #2801
RE: Tu noticia NO importante del día
Me la pase estudiando álgebra, me encanta la materia pero ya me tiene las bollas llenas.
Estas cosas anuales son interminables.

[Imagen: digitalizartransparent.png]
03-11-2011 20:59
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
matyary Sin conexión
Presidente del CEIT
SORPRENDEME!
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.809
Agradecimientos dados: 68
Agradecimientos: 342 en 83 posts
Registro en: Mar 2011
Mensaje: #2802
RE: Tu noticia NO importante del día
(03-11-2011 19:28)el pibe escribió:  
(03-11-2011 12:55)matyary escribió:  
(03-11-2011 11:57)el pibe escribió:  
(03-11-2011 11:50)matyary escribió:  
(03-11-2011 11:16)el pibe escribió:  en estos momentos un troll te diria "te dije que eso explotaba en la estructura y en las funciones" Trollface

pero como no soy troll (?): che, que lastima, venias bien, ojala que encuentres el error Carucha

Off-topic:
Es lo que me tomaron en el parcial, si lo hago funcionar en la compu tengo más chances de aprobar... pero la mierda esta no quiero hacer lo que yo le digo, me retorna moco (?)

es que esta mal declarada la escructura y cuando mandas y recibis los parametros en las funciones =P


Off-topic:
Ojo que eso está bien, al compilar no tira ningún error ni warning. Lo que está mal es el algoritmo de las funciones intercambiar y copiar (no hace lo que yo quiero).


Off-topic:
no, no es error de sintaxis.
un ejemplo, cuando pasas la "lista" como parametro de una funcion, te falta el "&" para marcar que es la direccion de memoria y que va por referencia

pero bueno, si vos decis que es un tema del algoritmo, todo vale. yo descubri que no todos los compiladores aceptan ciertos comandos.


Off-topic:
Ya solucioné el problema de una de las dos funciones que no trabajaba bien. Había un error en el ingreso de uno de los datos. Me falta corregir la otra, que hace algo similar a lo que quiero pero no es correcto.

\[\sqrt{-1} \;\; 2^3 \;\; \sum \;\; \pi\]
... and it was good!


Mi web: Von Hexlein
03-11-2011 21:17
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
shadow_mx Sin conexión
Presidente del CEIT
Lobo
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.090
Agradecimientos dados: 8
Agradecimientos: 8 en 3 posts
Registro en: Nov 2010
Facebook
Mensaje: #2803
RE: Tu noticia NO importante del día
En este laburo todos los viernes tenemos facturas gratis =)

asi voy a quedar jajaja

Leandro.


... Y mori queriendo ser libre, encontrar mi lado salvaje!!,
Ponerle alas a mi destino, romper los dientes de este engranaje! ♪♫
04-11-2011 10:29
Envíale un email Encuentra todos sus mensajes Cita este mensaje en tu respuesta
el pibe Sin conexión
Presidente del CEIT
Benderista
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.235
Agradecimientos dados: 5
Agradecimientos: 115 en 32 posts
Registro en: May 2011
YouTube
Mensaje: #2804
RE: Tu noticia NO importante del día
llueve

[Imagen: tolivi10.jpg]
2 Veces congresista por eArgentina
13 Veces congresista por eBolivia
1 Vez Emperador por eBolivia
Ex-Ministro de Salud eArgentino

[Imagen: Necromancer616.png]
04-11-2011 10:41
Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Goon Sin conexión
Profesor del Modulo A
=V
*****

Otra
UBA - Ciencias Económicas

Mensajes: 331
Agradecimientos dados: 0
Agradecimientos: 0 en 0 posts
Registro en: May 2011
Mensaje: #2805
RE: Tu noticia NO importante del día
Ayer empecé gimnasio otra vez y hoy me duelen los brazos. Tendría que empezar y no dejar nunca. Odio mi cuerpo tan débil D:
04-11-2011 11:21
Envíale un email Encuentra todos sus mensajes Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 8 invitado(s)