Hallo, ich habe einen fehler in folgendem Quelltext:
.
Der folgende Datei ausführen soll:
Der Fehler ist ein Zeigerfehler, weil die System.outprint von towns nicht auf die Attribute vond Towns zeigt, denke ich. Also ich denke die Attribute von towns werden schon richtig gespeichert, aber in der Ausgabe schein kein Zeiger drauf zu weisen.
Falls ihr die In Klasse braucht um mir zu helfen, findet ihr Sie hier:
http://www.ssw.uni-linz.ac.at/JavaBuch/In.class
Ich wäre für Hilfe echt dankbar.:toll:
Java:
class Graph {
//Hier werdend die Attribute deklariert.
String Ausgabe;//Hier nur Fließtext verwenden. Dann fehlen Attribute für die Städte.
String[] standorte;
int[][] matrix;
String list;
/*
public Graph(){
}
*/
public void initFromUser(){
System.out.println("Anzahl Staedte: ");//müsste klappen
int amountTowns = In.readInt();// müsste klappen
int i = 0;// müsste klappen
String[] townsName = new String[amountTowns];//falsch, Hier muss etwas komplett anderes stehen.
while(i < amountTowns){// müsste klappen
System.out.println("Ortsname eingeben: ");// müsste klappen
townsName[i] = In.readWord();
i++;// müsste klappen
}
//Hier beginnt der Abschnitt indem die Ausgabe der Orte generiert wird. Bekante Fehler sind das Fehlen von Leerzeichen
int townCounter = 0;// müsste klappen
this.Ausgabe = ("Es gibt folgende Orte: ");
this.standorte = townsName;//vllt. falsch
//Hier wird der Ausgabewert der Matrix initialisiert
int a = 0;// müsste klappen
int j = 1;// müsste klappen
int[][] adjacencymatrix = new int[amountTowns][amountTowns];// müsste klappen, eventuell
//Hier wird der Ausgabewert für die Matrix generiert. Ist die Form korrekt?
while(a<amountTowns){// müsste klappen
while(j<amountTowns){// müsste klappen
System.out.println("Entfernung zwischen " + townsName[a] + " und " + townsName[j] + " (oder -1 für keine Verbindung): ");
adjacencymatrix[a][j] = In.readInt();// müsste klappen
adjacencymatrix[j][a] = adjacencymatrix[a][j];//müsste klappen
adjacencymatrix[j][j] = 0;//müsste klappen
j++;
}
a++;//müsste klappen
j = a + 1;//müsste klappen
}
//Zuweisung der Matrix, bzw. des Attributes
this.matrix = adjacencymatrix;//Richtige Zuweisung? Eventuell falsch
//adjacencyMatrixToLists();
}
}
/*
Hier sollen die Listen entstehen.
public void adjacencyMatrixToLists(){
int listen = 0;
int orte = 1;
while(listen < matrix[].length()){kann ich jetzt auf matrix zugreifen?
while(orte < matrix[].length()){
String erstelleliste =\n + Standorte[listen];
if(matrix[listen][orte] != -1){
erstelleliste = erstelleliste + "(" + Standorte[orte] + ", " + matrix[listen][orte] + ")"}
}//Eventuell String falsch erstellt,also nicht gültig so.
orte = 0;//müsste klappen
listen++;//müsste klappen
}
this.list = erstelleliste;//Zuweisung korrekt?
}
//Aufgabe c) fehlt komplett
}
*/
Der folgende Datei ausführen soll:
Java:
class Towns{
public static void main(String args[]){
Graph towns = new Graph();
towns.initFromUser();
System.out.println(towns);
}
}
Falls ihr die In Klasse braucht um mir zu helfen, findet ihr Sie hier:
http://www.ssw.uni-linz.ac.at/JavaBuch/In.class
Ich wäre für Hilfe echt dankbar.:toll: