salve a tutti.
sono nuovo.
studio informatica (4°anno di superiori) e volevo un aiuto x fare una visita anticipata (e magari anche psticipata e simmetrica) per questo albero che ho fatto (vi avverto in anticipo fa pena) compilatelo con visual studio (cmq credo vada bene anche borland).
ah! una altra cosa. prima usavo quel compilatore e c'era la funzione x cancellare lo schermo (clrscr o qlc del genere). su visual studio xò ho visto nn c'è..è in qualche libreria sperduta? o magari qlc di voi mi può dire come posso fare?
grazie
ShArK86
ps: mi sono accorto adesso che nn posso allegare il sorgente e nn avendo spazio libero sul web x upparlo lo copoi qua di seguito...se ci sono problemi fatemi sapere..
************************************************** *******************
************************************************** *******************codice:#include <iostream.h> typedef struct nodo { int x; nodo * dx; nodo * sx; }nodo; nodo * crea (nodo * foglia) { cin>>foglia->x; foglia->dx=0; foglia->sx=0; return (foglia); } void posiziona (nodo * radice,nodo * foglia) { if ((foglia->x)==(radice->x)) cout<<"\nIl Valore Immesso e` Gia` Contenuto In Un Nodo Dell'Albero\n"; else { if ((foglia->x)>(radice->x)) { if ((radice->dx)==0) //attacco (ramo dx) { radice->dx=foglia; cout<<"\nCollegamento Effettuato Al Nodo Di Valore "<<radice->x<<" Sul Suo Ramo Di Destra\n"; } else { nodo * scalo; scalo=radice->dx; posiziona(scalo,foglia); //ricorsione su ramo dx } } else { if ((radice->sx)==0) //attacco (ramo sx) { radice->sx=foglia; cout<<"\nCollegamento Effettuato Al Nodo Di Valore "<<radice->x<<" Sul Suo Ramo Di Sinistra\n"; } else { nodo * scalo; scalo=radice->sx; posiziona(scalo,foglia); //ricorsione su ramo sx } } } } void anticipata (nodo * radice) { } void main() { int s; bool z,f; nodo * R; //radice dell'albero z=0; f=0; do { cout<<"\n1) Attacca Una Nuova Foglia"; cout<<"\n2) Visita Anticipata Dell'Albero"; cout<<"\n3) Esci\n"; cin>>s; switch (s) { case 1: { if (!f) //controllo se è la prima volta che si crea un nodo { //e quindi vado a creare la radice f=1; R=new(nodo); cout<<"\nValore Della Radice= "; R= crea(R); } else { nodo * n; n=new(nodo); cout<<"\nValore Della Foglia= "; n= crea(n); posiziona(R,n); } } break; case 2: { anticipata(R); } break; case 3: { z=1; } break; default: { } } } while(!z); }

Rispondi quotando
