30.11.2012 Aufrufe

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 3

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 3

Grundkurs Informatik Aufgabensammlung mit Lösungen Teil 3

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3-34 Aufgaben und <strong>Lösungen</strong><br />

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯<br />

if(i) while(c!=ESC) { // Schleife für Eingabe<br />

printf("\n> "); // neues Element<br />

i=0;<br />

while((c=getkey())!=CR) { // Zeichen lesen<br />

if(i==DIM) break; // Eingabe zu lang<br />

if(c>=BLNK) { // druckbares Zeichen<br />

putch(c); // .. anzeigen<br />

buffer[i++]=c; // .. in Puffer kopieren<br />

}<br />

else if(c==CR || c==ESC) break; // Eingabe beenden<br />

}<br />

if(i>0) {<br />

buffer[i]=0; // Puffer abschließen<br />

key=atoi(buffer); // Puffer in Integer konvert.<br />

i=tree_in(root,key); // Element einfügen<br />

if(i==0) { // nicht genug Speicher<br />

printf("\n\nNicht genug Speicher!");<br />

break;<br />

}<br />

}<br />

if(e) c=ESC;<br />

}<br />

}<br />

////////////////////////////////////////// Ausgabe des Baums<br />

else if(c=='A') {<br />

if(root==NULL) printf("\n\nDer Baum ist nicht initialisiert!");<br />

else if(root->l==NULL) printf("\n\nDer Baum ist leer!");<br />

else {<br />

printf("\n\nAusgabe:\n");<br />

printf("\nHauptreihenfolge: ");<br />

prelist_iter(root->l);<br />

printf("\nSym. Reihenfolge: ");<br />

inlist(root->l);<br />

printf("\nNebenreihenfolge: ");<br />

postlist(root->l);<br />

}<br />

}<br />

////////////////////////////////////////// Suchen eines Schlüssels<br />

else if(c=='S') {<br />

if(root==NULL) printf("\n\nDer Baum ist nicht initialisiert!");<br />

else if(root->l==NULL) printf("\n\nDer Baum ist leer!");<br />

else {<br />

printf("\n\nBitte zu suchenden Schluessel eingeben: ");<br />

scanf("%d",&key);<br />

i=tree_search(root,key);<br />

if(i==-1) printf("\nSchluessel %d nicht gefunden.",key);<br />

else printf("\nSchluessel %d nach %d Schritten gefunden.",key,i);<br />

}<br />

}<br />

////////////////////////////////////////// Löschen eines Schlüssels<br />

else if(c=='L') {<br />

if(root==NULL) printf("\n\nDer Baum ist nicht initialisiert!");<br />

else if(root->l==NULL) printf("\n\nDer Baum ist leer!");<br />

else {<br />

printf("\n\nBitte zu loeschenden Schluessel eingeben: ");<br />

scanf("%d",&key);<br />

i=tree_del(root,key);<br />

if(i==-1) printf("\nSchluessel %d nicht gefunden.",key);<br />

else printf("\nSchluessel %d nach %d Schritten geloescht.",key,i);<br />

}<br />

}<br />

else printf("\n\nFalsche Eingabe!"); // Falsche Eingabe<br />

c=0;

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!