From 37069d78fa05e0bd1b4f5843fdbc75b509d2310f Mon Sep 17 00:00:00 2001 From: Burkart Date: Mon, 24 Apr 2023 14:50:12 +0200 Subject: [PATCH] Initial sharing of project --- ._.DS_Store | Bin 0 -> 4096 bytes ARBEIT.java | 71 ++++++++++++++ GRAPH_MATRIX.java | 195 +++++++++++++++++++++++++++++++++++++++ KNOTEN.java | 43 +++++++++ KNOTENINFO.java | 39 ++++++++ Liste/ABSCHLUSS.java | 59 ++++++++++++ Liste/DATENELEMENT.java | 19 ++++ Liste/KNOTEN.java | 81 ++++++++++++++++ Liste/LISTE.java | 56 +++++++++++ Liste/LISTENELEMENT.java | 40 ++++++++ Liste/bluej.pkg | 97 +++++++++++++++++++ Liste/package.bluej | 97 +++++++++++++++++++ README.TXT | 12 +++ bluej.pkg | 72 +++++++++++++++ package.bluej | 72 +++++++++++++++ 15 files changed, 953 insertions(+) create mode 100755 ._.DS_Store create mode 100755 ARBEIT.java create mode 100755 GRAPH_MATRIX.java create mode 100755 KNOTEN.java create mode 100755 KNOTENINFO.java create mode 100755 Liste/ABSCHLUSS.java create mode 100755 Liste/DATENELEMENT.java create mode 100755 Liste/KNOTEN.java create mode 100755 Liste/LISTE.java create mode 100755 Liste/LISTENELEMENT.java create mode 100755 Liste/bluej.pkg create mode 100755 Liste/package.bluej create mode 100755 README.TXT create mode 100755 bluej.pkg create mode 100755 package.bluej diff --git a/._.DS_Store b/._.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..b0d67dec617036c99fa7cc43c37d82443fa0f917 GIT binary patch literal 4096 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUpMh92}qw49YPi zB6p(Mg>MgU^E0qLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!nMnixGA;1VU z6NJG)E+iwfSfMDjIKQ+gIaMJozbIQFGp{5yuOu@+FEJ;lQXwZbtwbRyCowM@*cXQC R8qyT1|KVPdVUYX(9{_L0A07Yz literal 0 HcmV?d00001 diff --git a/ARBEIT.java b/ARBEIT.java new file mode 100755 index 0000000..a669894 --- /dev/null +++ b/ARBEIT.java @@ -0,0 +1,71 @@ + +/** + * Baut Graphen auf und fuehrt die Tiefen- und Breitensuche aus. + * + * @author Albert Wiedemann + * @version 1.0 + */ +class ARBEIT +{ + + /** + * Hat hier nichts zu tun. + */ + ARBEIT () + { + + } + + + void AusfuehrenAutobahn () + { + GRAPH_MATRIX g; + g = new GRAPH_MATRIX (14); + + g. KnotenEinfuegen ("A"); + g. KnotenEinfuegen ("F"); + g. KnotenEinfuegen ("FD"); + g. KnotenEinfuegen ("HO"); + g. KnotenEinfuegen ("KA"); + g. KnotenEinfuegen ("LI"); + g. KnotenEinfuegen ("M"); + g. KnotenEinfuegen ("N"); + g. KnotenEinfuegen ("PA"); + g. KnotenEinfuegen ("R"); + g. KnotenEinfuegen ("RO"); + g. KnotenEinfuegen ("S"); + g. KnotenEinfuegen ("UL"); + g. KnotenEinfuegen ("W\u00DC"); + + g. KanteEinfuegen ("W\u00DC", "N", 104); + g. KanteEinfuegen ("N", "R", 80); + g. KanteEinfuegen ("HO", "W\u00DC", 192); + g. KanteEinfuegen ("HO", "N", 116); + g. KanteEinfuegen ("HO", "R", 166); + g. KanteEinfuegen ("FD", "W\u00DC", 98); + g. KanteEinfuegen ("M", "A", 64); + g. KanteEinfuegen ("M", "N", 163); + g. KanteEinfuegen ("M", "R", 117); + g. KanteEinfuegen ("M", "RO", 60); + g. KanteEinfuegen ("UL", "A", 59); + g. KanteEinfuegen ("UL", "W\u00DC", 165); + g. KanteEinfuegen ("UL", "LI", 126); + g. KanteEinfuegen ("UL", "S", 103); + g. KanteEinfuegen ("S", "KA", 53); + g. KanteEinfuegen ("S", "F", 127); + g. KanteEinfuegen ("R", "PA", 72); + g. KanteEinfuegen ("F", "W\u00DC", 131); + + // Formatiertes Ausgeben der Adjazenzmatrix in der Konsole + System. out. println ("Matrix"); + g. Ausgeben (); + System. out. println (); + //Tiefensuche mit Startknoten Muenchen + System. out. println ("Tiefensuche"); + g. TiefenSuche ("M"); + System. out. println (); + //Breitensuche mit Startknoten Muenchen + System. out. println ("Breitensuche"); + g. BreitenSuche ("M"); + } +} diff --git a/GRAPH_MATRIX.java b/GRAPH_MATRIX.java new file mode 100755 index 0000000..93e3e95 --- /dev/null +++ b/GRAPH_MATRIX.java @@ -0,0 +1,195 @@ +import Liste. *; +/** + * Verwaltet einen Graphen mit Hilfe einer Adjazenzmatrix. + * + * @author Albert Wiedemann + * @version 1.0 + */ +class GRAPH_MATRIX +{ + /** Feld mit den Knoten. */ + private KNOTEN [] knoten; + /** Adjazenzmatrix */ + private int [] [] matrix; + /** Zaehler fuer das Einfuegen der Knoten. */ + private int anzahlKnoten; + /** Markierung fuer besuchte Knoten */ + private boolean [] besucht; + + /** Liste der gerade in Arbeit befindlichen Knoten der Breitensuche */ + private LISTE offeneKnoten; + + /** + * Legt die Felder mit gegebener Groesse an. + * @param anzahl Anzahl der zu speichernden Knoten + */ + GRAPH_MATRIX (int anzahl) + { + knoten = new KNOTEN [anzahl]; + matrix = new int [anzahl] [anzahl]; + besucht = new boolean [anzahl]; + anzahlKnoten = 0; + + } + + /** + * Gibt den Index des Knotens oder -1, wenn es keinen Knoten mit diesem Bezeichner gibt. + * @return Knotenindex oder -1 + */ + private int KnotenNummerGeben (String bezeichner) + { + for (int i = 0; i < anzahlKnoten; i++) + { + if (knoten [i]. BezeichnungGeben (). equals (bezeichner)) + { + return i; + } + } + return -1; + } + + /** + * Fuegt einen neuen Knoten mit dem angegebenen Bezeichner ein. + * Falls das Feld voll ist oder der Bezeichner schon existiert, wird nichts eingefuegt. + * @param bezeichner Bezeichner des neuen Knoten + */ + void KnotenEinfuegen (String bezeichner) + { + if ((anzahlKnoten < knoten. length) && (KnotenNummerGeben (bezeichner) == -1)) + { + knoten [anzahlKnoten] = new KNOTEN (bezeichner); + matrix [anzahlKnoten] [anzahlKnoten] = 0; + for (int i = 0; i < anzahlKnoten; i++) + { + matrix [i] [anzahlKnoten] = -1; + matrix [anzahlKnoten] [i] = -1; + } + anzahlKnoten += 1; + } + } + + /** + * Fuegt eine neue Kante in den Graphen ein. + * @param von Bezeichner des Startknotens + * @param nach Bezeichner des Zielknotens + * @param gewichtung Gewicht der Kante + */ + void KanteEinfuegen (String von, String nach, int gewichtung) + { + int vonNummer; + int nachNummer; + vonNummer = KnotenNummerGeben (von); + nachNummer = KnotenNummerGeben (nach); + if ((vonNummer != -1) && (nachNummer != -1) && (vonNummer != nachNummer)) + { + matrix [vonNummer] [nachNummer] = gewichtung; + matrix [nachNummer] [vonNummer] = gewichtung; + } + } + + /** + * Gibt die Adjazenzmatrix aus. + */ + void Ausgeben () + { + int breite = 4; + String fueller = " "; + System. out. print (fueller); + for (int i = 0; i < anzahlKnoten; i++) + { + System. out. print (knoten [i]. BezFormatGeben (breite)); + } + System. out. println (); + for (int zeile = 0; zeile < anzahlKnoten; zeile++) + { + System. out. print (knoten [zeile]. BezFormatGeben (breite)); + for (int spalte = 0; spalte < anzahlKnoten; spalte++) + { + System. out. print ((matrix [zeile] [spalte] + fueller). substring (0, breite)); + } + System. out. println (); + } + } + + /** + * Erledigt die Aufgabe, einen Knoten zu besuchen. + * @param knotenNummer der zu besuchende Knoten + */ + private void Besuchen (int knotenNummer) + { + besucht [knotenNummer] = true; + System. out. print (knoten [knotenNummer]. BezeichnungGeben () + "; "); + + for (int abzweigNummer = 0; abzweigNummer < anzahlKnoten; abzweigNummer ++) + { + if ((matrix [knotenNummer] [abzweigNummer] > 0) && (! besucht [abzweigNummer])) + { + Besuchen (abzweigNummer); + } + } + + System. out. println (knoten [knotenNummer]. BezeichnungGeben () + "(fertig);"); + } + + /** + * Rahmen fuer die Tiefensuche. + * @param startKnoten Bezeichner des Startknotens + */ + void TiefenSuche (String startKnoten) + { + int startNummer; + startNummer = KnotenNummerGeben (startKnoten); + if (startNummer != -1) + { + for (int i = 0; i < anzahlKnoten; i++) + { + besucht [i] = false; + } + Besuchen (startNummer); + } + } + + + /** + * Breitensuche. + * @param startKnoten Bezeichner des Startknotens + */ + void BreitenSuche (String startKnoten) + { + int startNummer; + int aktKnoten; + KNOTENINFO info; + startNummer = KnotenNummerGeben (startKnoten); + if (startNummer != -1) + { + for (int i = 0; i < anzahlKnoten; i++) + { + besucht [i] = false; + } + offeneKnoten = new LISTE (); + aktKnoten = startNummer; + do + { + System. out. println (knoten [aktKnoten]. BezeichnungGeben ()); + besucht [aktKnoten] = true; + for (int k = 0; k < anzahlKnoten; k++) + { + info = new KNOTENINFO (k); + if ((matrix [aktKnoten] [k] > 0) && (! besucht [k]) && (! offeneKnoten. Enthaelt (info))) + { + offeneKnoten. HintenEinfuegen (info); + } + } + info = (KNOTENINFO) offeneKnoten. AnfangEntfernen (); + if (info != null) + { + aktKnoten = info. KnotennummerGeben (); + } + else + { + aktKnoten = -1; + } + } while (aktKnoten >= 0); + } + } +} diff --git a/KNOTEN.java b/KNOTEN.java new file mode 100755 index 0000000..a6de57a --- /dev/null +++ b/KNOTEN.java @@ -0,0 +1,43 @@ + +/** + * Verwaltet einen Knoten des Graphen. + * + * @author Albert Wiedemann + * @version 1.0 + */ +class KNOTEN +{ + + /** Bezeichnung des Knoten */ + private String bezeichnung; + + /** + * Legt den Bezeichner fest. + * @param bezeichnung die Bezeichnugn des Knoten + */ + KNOTEN (String bezeichnung) + { + this. bezeichnung = bezeichnung; + } + + /** + * Meldet die Bezeichnung des Knotens. + * @return Bezeichnung + */ + String BezeichnungGeben () + { + return bezeichnung; + } + + /** + * Meldet die Bezeichnung des Knotens als String gegebener Laenge. + * @param laenge Länge der Ausgabe + * @return Bezeichnung + */ + String BezFormatGeben (int laenge) + { + return (bezeichnung + " "). substring (0, laenge); + } + + +} diff --git a/KNOTENINFO.java b/KNOTENINFO.java new file mode 100755 index 0000000..d8b6b54 --- /dev/null +++ b/KNOTENINFO.java @@ -0,0 +1,39 @@ + +/** + * Knoteninformation fuer die Listenverwaltung. + * + * @author Albert Wiedemann + * @version 1.0 + */ +class KNOTENINFO implements Liste. DATENELEMENT +{ + private int knotenNummer; + + /** + * Legt die Information an. + * @param nummer Nummer des Knotens + */ + KNOTENINFO (int nummer) + { + knotenNummer = nummer; + } + + /** + * Meldet die Knotennumer. + * @return knotenNummer; + */ + int KnotennummerGeben () + { + return knotenNummer; + } + + /** + * Testet, ob das Datenelemnt den gleichen Schluesselwert hat wie das uebergebene Datenelement. + * @param d zu vergleichendes Datenelement + * return true, wenn die Schluesselwerte gleich sind + */ + public boolean SchluesselIstGleich (Liste. DATENELEMENT d) + { + return knotenNummer == ((KNOTENINFO) d). knotenNummer; + } +} diff --git a/Liste/ABSCHLUSS.java b/Liste/ABSCHLUSS.java new file mode 100755 index 0000000..aa6f3a7 --- /dev/null +++ b/Liste/ABSCHLUSS.java @@ -0,0 +1,59 @@ +package Liste; + + +/** + * Abschlusselement der Liste. + * + * @author Albert Wiedemann + * @version 1.0 + */ +class ABSCHLUSS extends LISTENELEMENT +{ + + /** + * Der Konstruktor hat keine Arbeit + */ + ABSCHLUSS () + { + super (); // Nur zur Dokumentation + } + + /** + * Meldet das Datenelement des ersten Knotens zurück + * @return Datenelement des ersten Knotens + */ + DATENELEMENT AnfangGeben () + { + return null; + } + + /** + * Fügt ein neues Datenelement am Ende der Liste an. + * @param daten das neue Datenelement + */ + LISTENELEMENT HintenEinfuegen (DATENELEMENT daten) + { + return new KNOTEN (daten, this); + } + + /** + * Entfernt den Knoten mit dem angegebenen Element aus der Liste. + * @param d_raus das zu löschende Datenelement. + * @return (neuer) Nachfolger + */ + LISTENELEMENT KnotenEntfernen (DATENELEMENT d_raus) + { + return this; + } + + /** + * Meldet, ob die Liste ein Datenelement mit dem angegebenen Schlüssel enthält. + * @param d Datenelement mit den zu suchenden Schlüsselwert + * @return true, wenn das Datenelement gefunden wurde + */ + boolean Enthaelt (DATENELEMENT d) + { + return false; + } + +} diff --git a/Liste/DATENELEMENT.java b/Liste/DATENELEMENT.java new file mode 100755 index 0000000..4af9fb3 --- /dev/null +++ b/Liste/DATENELEMENT.java @@ -0,0 +1,19 @@ +package Liste; + + +/** + * Beschreibt das in der Warteschlange verwaltete Datenelement. + * + * @author Albert Wiedemann + * @version 1.0 + */ + +public interface DATENELEMENT +{ + /** + * Testet, ob das Datenelemnt den gleichen Schlüsselwert hat wie das übergebene Datenelement. + * @param d zu vergleichendes Datenelement + * return true, wernn dei Schlüsselwerte gleich sind + */ + boolean SchluesselIstGleich (DATENELEMENT d); +} diff --git a/Liste/KNOTEN.java b/Liste/KNOTEN.java new file mode 100755 index 0000000..d762197 --- /dev/null +++ b/Liste/KNOTEN.java @@ -0,0 +1,81 @@ +package Liste; + + +/** + * Verwaltet einen Knoten der Warteschlange. + * + * @author Albert Wiedemann + * @version 1.0 + */ +class KNOTEN extends LISTENELEMENT +{ + /** Referenz auf den Nachfolger */ + private LISTENELEMENT nachfolger; + /** Referenz auf das verwaltete Datenelement */ + private DATENELEMENT daten; + + /** + * Legt einen Knoten mit angegebenen Nachfolger und angegebenem Datenelement an. + * @param daten das verwaltete Datenelement. + * @param nachfolger der Nachfolger des Knotens + */ + KNOTEN (DATENELEMENT daten, LISTENELEMENT nachfolger) + { + this. daten = daten; + this. nachfolger = nachfolger; + } + + /** + * Meldet das Datenelement des ersten Knotens zurück + * @return Datenelement des ersten Knotens + */ + DATENELEMENT AnfangGeben () + { + return daten; + } + + /** + * Fügt ein neues Datenelement am Ende der Liste an. + * @param daten das neue Datenelement + */ + LISTENELEMENT HintenEinfuegen (DATENELEMENT daten) + { + nachfolger = nachfolger. HintenEinfuegen (daten); + return this; + } + + /** + * Entfernt den Knoten mit dem angegebenen Element aus der Liste. + * @param d_raus das zu löschende Datenelement. + * @return (neuer) Nachfolger + */ + LISTENELEMENT KnotenEntfernen (DATENELEMENT d_raus) + { + if (daten == d_raus) + { + return nachfolger; + } + else + { + nachfolger = nachfolger. KnotenEntfernen (d_raus); + return this; + } + } + + /** + * Meldet, ob die Liste ein Datenelement mit dem angegebenen Schlüssel enthält. + * @param d Datenelement mit den zu suchenden Schlüsselwert + * @return true, wenn das Datenelement gefunden wurde + */ + boolean Enthaelt (DATENELEMENT d) + { + if (daten. SchluesselIstGleich (d)) + { + return true; + } + else + { + return nachfolger. Enthaelt (d); + } + } +} diff --git a/Liste/LISTE.java b/Liste/LISTE.java new file mode 100755 index 0000000..9930372 --- /dev/null +++ b/Liste/LISTE.java @@ -0,0 +1,56 @@ +package Liste; + + +/** + * Verwaltet eine Liste von Datenelementen + * + * @author Albert Wiedemann + * @version 1.0 + */ +public class LISTE +{ + /** Referenz auf den ersten Knoten der Liste */ + private LISTENELEMENT anfang; + + /** + * Legt eine leere Liste an. + */ + public LISTE () + { + anfang = new ABSCHLUSS (); + } + + /** + * Fügt ein neues Datenelement am Ende der Liste an. + * @param daten das neue Datenelement + */ + public void HintenEinfuegen (DATENELEMENT daten) + { + anfang = anfang. HintenEinfuegen (daten); + } + + /** + * Entfernt das erste Datenelement aus der Warteschlange. + * @return erstes Datenelement + */ + public DATENELEMENT AnfangEntfernen () + { + DATENELEMENT resultat; + resultat = anfang. AnfangGeben (); + if (resultat != null) + { + anfang = anfang. KnotenEntfernen (resultat); + } + return resultat; + } + + /** + * Meldet, ob die Liste ein Datenelement mit dem angegebenen Schlüssel enthält. + * @param d Datenelement mit den zu suchenden Schlüsselwert + * @return true, wenn das Datenelement gefunden wurde + */ + public boolean Enthaelt (DATENELEMENT d) + { + return anfang. Enthaelt (d); + } +} diff --git a/Liste/LISTENELEMENT.java b/Liste/LISTENELEMENT.java new file mode 100755 index 0000000..d82ed41 --- /dev/null +++ b/Liste/LISTENELEMENT.java @@ -0,0 +1,40 @@ +package Liste; + + +/** + * Verwaltet ein allgemeines Element der Warteschlange. + * + * @author Albert Wiedemann + * @version 1.0 + */ + +abstract class LISTENELEMENT +{ + + /** + * Meldet das Datenelement des ersten Knotens zurück + * @return Datenelement des ersten Knotens + */ + abstract DATENELEMENT AnfangGeben (); + + /** + * Fügt ein neues Datenelement am Ende der Liste an. + * @param daten das neue Datenelement + */ + abstract LISTENELEMENT HintenEinfuegen (DATENELEMENT daten); + + /** + * Entfernt den Knoten mit dem angegebenen Element aus der Liste. + * @param d_raus das zu löschende Datenelement. + * @return (neuer) Nachfolger + */ + abstract LISTENELEMENT KnotenEntfernen (DATENELEMENT d_raus); + + /** + * Meldet, ob die Liste ein Datenelement mit dem angegebenen Schlüssel enthält. + * @param d Datenelement mit den zu suchenden Schlüsselwert + * @return true, wenn das Datenelement gefunden wurde + */ + abstract boolean Enthaelt (DATENELEMENT d); + +} diff --git a/Liste/bluej.pkg b/Liste/bluej.pkg new file mode 100755 index 0000000..519211c --- /dev/null +++ b/Liste/bluej.pkg @@ -0,0 +1,97 @@ +#BlueJ package file +dependency1.from=LISTENELEMENT +dependency1.to=DATENELEMENT +dependency1.type=UsesDependency +dependency10.from=KNOTEN +dependency10.to=ABSCHLUSS +dependency10.type=UsesDependency +dependency2.from=ABSCHLUSS +dependency2.to=DATENELEMENT +dependency2.type=UsesDependency +dependency3.from=ABSCHLUSS +dependency3.to=KNOTEN +dependency3.type=UsesDependency +dependency4.from=LISTE +dependency4.to=DATENELEMENT +dependency4.type=UsesDependency +dependency5.from=LISTE +dependency5.to=LISTENELEMENT +dependency5.type=UsesDependency +dependency6.from=LISTE +dependency6.to=ABSCHLUSS +dependency6.type=UsesDependency +dependency7.from=KNOTEN +dependency7.to=DATENELEMENT +dependency7.type=UsesDependency +dependency8.from=ABSCHLUSS +dependency8.to=LISTENELEMENT +dependency8.type=UsesDependency +dependency9.from=KNOTEN +dependency9.to=LISTENELEMENT +dependency9.type=UsesDependency +package.editor.height=400 +package.editor.width=560 +package.editor.x=596 +package.editor.y=159 +package.numDependencies=10 +package.numTargets=5 +package.showExtends=true +package.showUses=true +target1.editor.height=700 +target1.editor.width=900 +target1.editor.x=0 +target1.editor.y=22 +target1.height=50 +target1.name=DATENELEMENT +target1.naviview.expanded=true +target1.showInterface=false +target1.type=InterfaceTarget +target1.width=120 +target1.x=100 +target1.y=300 +target2.editor.height=700 +target2.editor.width=900 +target2.editor.x=0 +target2.editor.y=22 +target2.height=50 +target2.name=LISTENELEMENT +target2.naviview.expanded=true +target2.showInterface=false +target2.type=AbstractTarget +target2.width=120 +target2.x=190 +target2.y=150 +target3.editor.height=700 +target3.editor.width=900 +target3.editor.x=0 +target3.editor.y=22 +target3.height=50 +target3.name=ABSCHLUSS +target3.showInterface=false +target3.type=ClassTarget +target3.width=100 +target3.x=340 +target3.y=70 +target4.editor.height=700 +target4.editor.width=900 +target4.editor.x=0 +target4.editor.y=22 +target4.height=50 +target4.name=LISTE +target4.naviview.expanded=true +target4.showInterface=false +target4.type=ClassTarget +target4.width=80 +target4.x=10 +target4.y=210 +target5.editor.height=700 +target5.editor.width=900 +target5.editor.x=0 +target5.editor.y=22 +target5.height=50 +target5.name=KNOTEN +target5.showInterface=false +target5.type=ClassTarget +target5.width=80 +target5.x=440 +target5.y=250 diff --git a/Liste/package.bluej b/Liste/package.bluej new file mode 100755 index 0000000..519211c --- /dev/null +++ b/Liste/package.bluej @@ -0,0 +1,97 @@ +#BlueJ package file +dependency1.from=LISTENELEMENT +dependency1.to=DATENELEMENT +dependency1.type=UsesDependency +dependency10.from=KNOTEN +dependency10.to=ABSCHLUSS +dependency10.type=UsesDependency +dependency2.from=ABSCHLUSS +dependency2.to=DATENELEMENT +dependency2.type=UsesDependency +dependency3.from=ABSCHLUSS +dependency3.to=KNOTEN +dependency3.type=UsesDependency +dependency4.from=LISTE +dependency4.to=DATENELEMENT +dependency4.type=UsesDependency +dependency5.from=LISTE +dependency5.to=LISTENELEMENT +dependency5.type=UsesDependency +dependency6.from=LISTE +dependency6.to=ABSCHLUSS +dependency6.type=UsesDependency +dependency7.from=KNOTEN +dependency7.to=DATENELEMENT +dependency7.type=UsesDependency +dependency8.from=ABSCHLUSS +dependency8.to=LISTENELEMENT +dependency8.type=UsesDependency +dependency9.from=KNOTEN +dependency9.to=LISTENELEMENT +dependency9.type=UsesDependency +package.editor.height=400 +package.editor.width=560 +package.editor.x=596 +package.editor.y=159 +package.numDependencies=10 +package.numTargets=5 +package.showExtends=true +package.showUses=true +target1.editor.height=700 +target1.editor.width=900 +target1.editor.x=0 +target1.editor.y=22 +target1.height=50 +target1.name=DATENELEMENT +target1.naviview.expanded=true +target1.showInterface=false +target1.type=InterfaceTarget +target1.width=120 +target1.x=100 +target1.y=300 +target2.editor.height=700 +target2.editor.width=900 +target2.editor.x=0 +target2.editor.y=22 +target2.height=50 +target2.name=LISTENELEMENT +target2.naviview.expanded=true +target2.showInterface=false +target2.type=AbstractTarget +target2.width=120 +target2.x=190 +target2.y=150 +target3.editor.height=700 +target3.editor.width=900 +target3.editor.x=0 +target3.editor.y=22 +target3.height=50 +target3.name=ABSCHLUSS +target3.showInterface=false +target3.type=ClassTarget +target3.width=100 +target3.x=340 +target3.y=70 +target4.editor.height=700 +target4.editor.width=900 +target4.editor.x=0 +target4.editor.y=22 +target4.height=50 +target4.name=LISTE +target4.naviview.expanded=true +target4.showInterface=false +target4.type=ClassTarget +target4.width=80 +target4.x=10 +target4.y=210 +target5.editor.height=700 +target5.editor.width=900 +target5.editor.x=0 +target5.editor.y=22 +target5.height=50 +target5.name=KNOTEN +target5.showInterface=false +target5.type=ClassTarget +target5.width=80 +target5.x=440 +target5.y=250 diff --git a/README.TXT b/README.TXT new file mode 100755 index 0000000..2bea2dd --- /dev/null +++ b/README.TXT @@ -0,0 +1,12 @@ +------------------------------------------------------------------------ +This is the project README file. Here, you should describe your project. +Tell the reader (someone who does not know anything about this project) +all he/she needs to know. The comments should usually include at least: +------------------------------------------------------------------------ + +PROJECT TITLE: +PURPOSE OF PROJECT: +VERSION or DATE: +HOW TO START THIS PROJECT: +AUTHORS: +USER INSTRUCTIONS: diff --git a/bluej.pkg b/bluej.pkg new file mode 100755 index 0000000..ef6ab96 --- /dev/null +++ b/bluej.pkg @@ -0,0 +1,72 @@ +#BlueJ package file +dependency1.from=ARBEIT +dependency1.to=GRAPH_MATRIX +dependency1.type=UsesDependency +dependency2.from=GRAPH_MATRIX +dependency2.to=KNOTEN +dependency2.type=UsesDependency +dependency3.from=GRAPH_MATRIX +dependency3.to=KNOTENINFO +dependency3.type=UsesDependency +editor.fx.0.height=0 +editor.fx.0.width=0 +editor.fx.0.x=0 +editor.fx.0.y=0 +objectbench.height=93 +objectbench.width=776 +package.divider.horizontal=0.6 +package.divider.vertical=0.8 +package.editor.height=393 +package.editor.width=649 +package.editor.x=97 +package.editor.y=99 +package.frame.height=600 +package.frame.width=800 +package.numDependencies=3 +package.numTargets=5 +package.showExtends=true +package.showUses=true +project.charset=windows-1252 +readme.height=60 +readme.name=@README +readme.width=49 +readme.x=10 +readme.y=10 +target1.height=50 +target1.name=GRAPH_MATRIX +target1.naviview.expanded=true +target1.showInterface=false +target1.type=ClassTarget +target1.width=140 +target1.x=70 +target1.y=140 +target2.height=50 +target2.name=ARBEIT +target2.naviview.expanded=true +target2.showInterface=false +target2.type=ClassTarget +target2.width=80 +target2.x=290 +target2.y=220 +target3.height=62 +target3.name=Liste +target3.type=PackageTarget +target3.width=80 +target3.x=60 +target3.y=10 +target4.height=50 +target4.name=KNOTEN +target4.naviview.expanded=false +target4.showInterface=false +target4.type=ClassTarget +target4.width=90 +target4.x=330 +target4.y=80 +target5.height=50 +target5.name=KNOTENINFO +target5.naviview.expanded=true +target5.showInterface=false +target5.type=ClassTarget +target5.width=120 +target5.x=190 +target5.y=300 diff --git a/package.bluej b/package.bluej new file mode 100755 index 0000000..ef6ab96 --- /dev/null +++ b/package.bluej @@ -0,0 +1,72 @@ +#BlueJ package file +dependency1.from=ARBEIT +dependency1.to=GRAPH_MATRIX +dependency1.type=UsesDependency +dependency2.from=GRAPH_MATRIX +dependency2.to=KNOTEN +dependency2.type=UsesDependency +dependency3.from=GRAPH_MATRIX +dependency3.to=KNOTENINFO +dependency3.type=UsesDependency +editor.fx.0.height=0 +editor.fx.0.width=0 +editor.fx.0.x=0 +editor.fx.0.y=0 +objectbench.height=93 +objectbench.width=776 +package.divider.horizontal=0.6 +package.divider.vertical=0.8 +package.editor.height=393 +package.editor.width=649 +package.editor.x=97 +package.editor.y=99 +package.frame.height=600 +package.frame.width=800 +package.numDependencies=3 +package.numTargets=5 +package.showExtends=true +package.showUses=true +project.charset=windows-1252 +readme.height=60 +readme.name=@README +readme.width=49 +readme.x=10 +readme.y=10 +target1.height=50 +target1.name=GRAPH_MATRIX +target1.naviview.expanded=true +target1.showInterface=false +target1.type=ClassTarget +target1.width=140 +target1.x=70 +target1.y=140 +target2.height=50 +target2.name=ARBEIT +target2.naviview.expanded=true +target2.showInterface=false +target2.type=ClassTarget +target2.width=80 +target2.x=290 +target2.y=220 +target3.height=62 +target3.name=Liste +target3.type=PackageTarget +target3.width=80 +target3.x=60 +target3.y=10 +target4.height=50 +target4.name=KNOTEN +target4.naviview.expanded=false +target4.showInterface=false +target4.type=ClassTarget +target4.width=90 +target4.x=330 +target4.y=80 +target5.height=50 +target5.name=KNOTENINFO +target5.naviview.expanded=true +target5.showInterface=false +target5.type=ClassTarget +target5.width=120 +target5.x=190 +target5.y=300