.dsy:it. Pages (28): « First ... « 18 19 20 21 [22] 23 24 25 26 » ... Last »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Algoritmi e strutture dati (http://www.dsy.it/forum/forumdisplay.php?forumid=207)
-- Progetto "FACCIALIBRO" (http://www.dsy.it/forum/showthread.php?threadid=37551)


Posted by hyperion on 23-02-2009 09:05:

Originally posted by Gehur
ecco si,è quello che intendevo

piuttosto qualcuno mi sa dire cosa serve il campo predecessore nell'algoritmo di visita grafo in ampiezza bfs.. ho buttato una bozza in C dell'algoritmo presente sul libro a pg 455, ma non ho usato il capo pigreco, non ne vedo l'utilità..



allora come fai ad incrementare la distanza?!dovrai implementare una cosa del genere....visita la lista amici di X se Y non è visitato allora metti in coda e aincrementa la sua distanza cioè distanza_di_y = distanza_di_X + 1.........


Posted by Gehur on 23-02-2009 09:29:

adesso lo riguardo


Posted by Gehur on 23-02-2009 10:52:

ma io la distanza la incremento..non è che predecessore mi seve se voglio costruire l'abero??

comunque ci sto ancora ragionando


Posted by hyperion on 23-02-2009 11:00:

Originally posted by Gehur
ma io la distanza la incremento..non è che predecessore mi seve se voglio costruire l'abero??

comunque ci sto ancora ragionando


ho visto ora lo pseudocodice sul libro...no quel pigreco è sostanzialmente inutile...almeno che tu non necessiti di distinguere i nodi visitati da quelli non visitati...ma per quest'applicazione non ne vado l utilità..hai ragione!il libro distingue anche tra nodi bianchi grigi e neri...ma non è cosi fondamentale!basta che li consideri visitati/non visitati...
in realtà io pensavo che ti riferissi alla variabile che usa per incrementare la distanza..quella si riferisce al predecessore e ti serve perchè altrimenti non incrementi un bel nulla.


Posted by Gehur on 23-02-2009 11:08:

a ok ok, adesso vediamo di implementarlo :D


Posted by Shaper on 23-02-2009 11:57:

Scusate, ho un problema con la funzione strcpy().
Quando compila mi da questo warning:

faccialibro.c:380: warning: incompatible implicit declaration of built-in function 'strcpy'

L'ho usata per esempio in questa funzione:

void status_mod(element *ele, char *str){
strcpy(ele->status, str);
}

Nonostante questo mi sembra che funzioni tutto regolarmente, ma se mi da quel warning qualcosa di storto ci dev'essere...
Anche a voi da questo problema?

Ah, compilo con gcc attraverso NetBeans per Mac

__________________
Eidolon64|Blog


Posted by Gehur on 23-02-2009 12:02:

be ele è di tipo element, str è di tipo char..

la strcpy copia da stringa a stringa(da char a char)


Posted by hyperion on 23-02-2009 12:13:

Originally posted by Shaper
Scusate, ho un problema con la funzione strcpy().
Quando compila mi da questo warning:

faccialibro.c:380: warning: incompatible implicit declaration of built-in function 'strcpy'

L'ho usata per esempio in questa funzione:

void status_mod(element *ele, char *str){
strcpy(ele->status, str);
}

Nonostante questo mi sembra che funzioni tutto regolarmente, ma se mi da quel warning qualcosa di storto ci dev'essere...
Anche a voi da questo problema?

Ah, compilo con gcc attraverso NetBeans per Mac




prova ad usare un puntatore di appoggio

char* w;


ele->status = strcpy(w,str);


Posted by Gehur on 23-02-2009 12:34:

Originally posted by Gehur
be ele è di tipo element, str è di tipo char..

la strcpy copia da stringa a stringa(da char a char)


ops,ho letto male, mi sono confuso con la dichiarazione della funzione


Posted by Shaper on 23-02-2009 15:42:

Originally posted by hyperion
prova ad usare un puntatore di appoggio

char* w;


ele->status = strcpy(w,str);

Niente, ho provato come hai detto ma il risultato è identco: fa quello che deve fare ma mi da un warning.
Tra l'altro non è un problema di tipi o specfico di quella parte di codice: ho provato a dichiarare due variabili char[] e a fare strcpy() fra di loro e mi da lo stesso warning..

Boh, a sto punto non so che fare, sembra che sia un problema proprio della funzione.. :?

__________________
Eidolon64|Blog


Posted by Joy88 on 24-02-2009 10:10:

Solito quesito mattutino:

amico* trovaAmico(amico *a, char *nick)
{
amico *app = malloc(sizeof(amico));
app = a;
while(app!=NULL)
{
if (strcmp(nick, app->nome)==0)
return app;
app = app -> next;
}
return NULL;
}
Mi va in segmentation fault (strano eh!) alla strcmp nonostante abbia rincontrollato che il tipo amico abbia veramente un campo nome.. ovviamente char..

__________________
"Amor, ch’a nullo amato amar perdona, mi prese del costui piacer sì forte che, come vedi, ancor non m’abbandona."

*Dante*


Posted by hyperion on 24-02-2009 10:43:

Originally posted by Joy88
Solito quesito mattutino:

amico* trovaAmico(amico *a, char *nick)
{
amico *app = malloc(sizeof(amico));
app = a;
while(app!=NULL)
{
if (strcmp(nick, app->nome)==0)
return app;
app = app -> next;
}
return NULL;
}
Mi va in segmentation fault (strano eh!) alla strcmp nonostante abbia rincontrollato che il tipo amico abbia veramente un campo nome.. ovviamente char..



no..non credo ti vada in segmentation per la strcmp in sè...quanto piuttosto secondo me sta accedendo a qualcosa di "vuoto"
non mi convince amico* app = malloc(sizeof(amico));

prova solo con
amico *app;
app = a;

e poi usa app normalmente per scorrere...come hai fatto...


Posted by Joy88 on 24-02-2009 10:51:

Ho provato come dicevi tu ma non cambia niente.. e debuggando mi va in seg fault sulla strcmp...

__________________
"Amor, ch’a nullo amato amar perdona, mi prese del costui piacer sì forte che, come vedi, ancor non m’abbandona."

*Dante*


Posted by hyperion on 24-02-2009 10:56:

Originally posted by Joy88
Ho provato come dicevi tu ma non cambia niente.. e debuggando mi va in seg fault sulla strcmp...



la strcmp è giusta...se tu dici che app ha un campo nome di tipo char allora non c'è nulla di sbagliato nella strcmp per me..il problema secondo me sorge quando legge quel app->nome va in segmentation perchè evidentemente punta a qualcosa verso cui non dovrebbe puntare...e quindi non riesce a leggere il tuo campo...
procediamo per passi...quell' a che cos'é?la radice del sottoalbero delle amicizie?


Posted by Johnny88 on 24-02-2009 14:51:

hai provato ad usare valgrind?

è un ottimo tool che ti permette di visualizzare gli errori di allocazione di memoria e i memory leak.


All times are GMT. The time now is 11:12. Pages (28): « First ... « 18 19 20 21 [22] 23 24 25 26 » ... Last »
Show all 417 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.