03.11.2013 Aufrufe

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

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.

15.1 Prüfung von Direktverbindungen 317<br />

Ham → ((Koe 463) (Ful 431) (Ber 291))<br />

Koe → ((Kar 325) (Mai 185) (Ham 463))<br />

Kar → ((Stu 91) (Koe 325))<br />

Stu → ((Fra 207) (Kar 91))<br />

Mai → ((Fra 38) (Koe 185))<br />

Fra → ((Stu 207) (Mue 434) (Mai 38))<br />

Mue → ((Fra 434) (Ful 394))<br />

Ful → ((Mue 394) (Ham 431))<br />

Ber → ((Dre 180) (Ham 291))<br />

Dre → ((Ber 180))<br />

Eintragen von Entfernungen<br />

Genau wie bei den zuvor vorgestellten Suchverfahren gehen wir auch jetzt wieder<br />

davon aus, daß die Stationen bereits als Instanzen der Klasse “Station” eingerichtet<br />

worden sind (siehe Abschnitt 15.1).<br />

Um die angegebene Struktur für die Sammler festzulegen, vereinbaren wir die Methode<br />

“initialisierenDirektverbindung” innerhalb der Klasse “Station” in der Form<br />

initialisierenDirektverbindung<br />

direktVerbindung := OrderedCollection new<br />

und lassen die folgende Anforderung ausführen:<br />

Station allInstances do:<br />

[:eineStation|eineStation initialisierenDirektverbindung]<br />

Im Hinblick auf eine spätere grafische Darstellung des IC-Netzes sehen wir in der<br />

Klasse “Station” die folgende Methode vor:<br />

eintragenKoordinaten: einPunkt<br />

koordinaten := einPunkt<br />

Um das IC-Netz mit den Stationen und den Entfernungsangaben der Direktverbindungen<br />

aufbauen zu können, vereinbaren wir zunächst die Klassen-Methode “eintragenKoordinatenNeuDirektVerbindung”<br />

wie folgt:<br />

eintragenKoordinatenNeuDirektverbindung<br />

Ham eintragenKoordinaten: (150 @ 30).<br />

Ham eintragenDirektverbindung: (OrderedCollection with: Koe with: 463).<br />

Ham eintragenDirektverbindung: (OrderedCollection with: Ful with: 431).<br />

Ham eintragenDirektverbindung: (OrderedCollection with: Ber with: 291).<br />

Koe eintragenKoordinaten: (20 @ 90).<br />

Koe eintragenDirektverbindung: (OrderedCollection with: Kar with: 325).<br />

Koe eintragenDirektverbindung: (OrderedCollection with: Mai with: 185).<br />

Koe eintragenDirektverbindung: (OrderedCollection with: Ham with: 463).

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!