Vai al contenuto

Primario: Sky Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Secondario: Sky Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Sfondo: Blank Waves Squares Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Corsi di Laurea










ROX @ Unisa - Forum degli studenti di Ingegneria utilizza i cookie. Se prosegui la navigazione accetti il loro uso.    Accetto l'uso dei cookie
-->
Foto

Aiuto Prova d'Esame!!


  • Effettua l'accesso per rispondere
Questa discussione ha avuto 22 risposta/e

#21
R.Antonio

R.Antonio

    Advanced Member

  • Utente
  • StellaStellaStella
  • 39 Messaggi:

Ragazzi io l'ho fatta in 10 minuti e non ho il tempo di implementare il main x vedere se funziona o meno... ve lo posto così come l'ho scritta ... sicuramente ci sarà qlk errore ma non credo sia irrisolvibile, fatemi sapere se funziona...


Ragazzi l'ho corretto, l'ho testato e pensate un po funziona...
Spoiler


Se ci dovessero essere altri problemi bhè... :sfiga: mi arrendo... (almeno su qst problema)

#22
Raffina92

Raffina92

    Advanced Member

  • Utente
  • StellaStellaStella
  • 64 Messaggi:

Prova con questa , dovrebbe andare:
[codice-c:187v2tdj]TNode *ricerca_votomax_docente(TTree tree, char docente[]){
TNode *node1, *node2;
if(tree==NULL){
return NULL;
}
if((tree->left==NULL) && (tree->right==NULL)){
if(strcmp(tree->info.satellite.docente,docente)==0)
return tree;
else
return NULL;
}
if(tree!=NULL){
node1=ricerca_votomax_docente(tree->left,docente);
node2=ricerca_votomax_docente(tree->right, docente);
if(strcmp(tree->info.satellite.docente,docente)!=0){
if((node1!=NULL) && (node2!=NULL)){
if((node1->info.satellite.voto)>(node2->info.satellite.voto)){
return node1;
}
else if((node1->info.satellite.voto)==(node2->info.satellite.voto)){
if(greater(node1->info.key,node2->info.key))
return node2;
else
return node1;
}
else{
return node2;
}
}
else if((node1!=NULL) && (node2==NULL)){
return node1;
}
else if((node1==NULL) && (node2!=NULL)){
return node2;
}
else{
return NULL;
}
}

else{
if((node1!=NULL) && (node2!=NULL)){
if((node1->info.satellite.voto)>(node2->info.satellite.voto)){
if((node1->info.satellite.voto)>(tree->info.satellite.voto))
return node1;
else
return tree;
}
else if((node1->info.satellite.voto)==(node2->info.satellite.voto)){
if(greater(node1->info.key,node2->info.key)){
if((node2->info.satellite.voto)>=(tree->info.satellite.voto))
return node2;
else
return tree;
}
else{
if((node1->info.satellite.voto)>(tree->info.satellite.voto))
return node1;
else
return tree;
}
}
else{
if((node2->info.satellite.voto)>=(tree->info.satellite.voto))
return node2;
else
return tree;
}
}
else if((node1!=NULL) && (node2==NULL)){
if((node1->info.satellite.voto)>(tree->info.satellite.voto))
return node1;
else
return tree;
}
else if((node1==NULL) && (node2!=NULL)){
if((node2->info.satellite.voto)>=(tree->info.satellite.voto))
return node2;
else
return tree;
}
else{
return tree;
}
}
}
}[/codice-c]


Sembra funzionare, ti ringrazio!! ^_^ ^_^

#23
Raffina92

Raffina92

    Advanced Member

  • Utente
  • StellaStellaStella
  • 64 Messaggi:

Ragazzi io l'ho fatta in 10 minuti e non ho il tempo di implementare il main x vedere se funziona o meno... ve lo posto così come l'ho scritta ... sicuramente ci sarà qlk errore ma non credo sia irrisolvibile, fatemi sapere se funziona...


Ragazzi l'ho corretto, l'ho testato e pensate un po funziona...
Spoiler


Se ci dovessero essere altri problemi bhè... :sfiga: mi arrendo... (almeno su qst problema)


Sembra funzionare anche il tuo!! Comunque porta a scemunirsi davvero :D Grazieee




Leggono questa discussione 0 utenti

0 utenti, 0 ospiti, 0 utenti anonimi