diff --git a/ford-fulkerson.html b/ford-fulkerson.html
index 188b20b..d94f140 100644
--- a/ford-fulkerson.html
+++ b/ford-fulkerson.html
@@ -134,7 +134,7 @@ function parseGraph(){
continue;
}
if(verticesMap[trimmedVertexName]!=undefined){
- throw new Error("Knoten können nicht doppelt vorkommen");
+ throw new Error("Knoten "+trimmedVertexName+" kommt doppelt vor");
}
vertices.push({name:trimmedVertexName,x:100+vertexNumber*25,y:150,special:""});
verticesMap[trimmedVertexName]=vertices[vertices.length-1];
@@ -163,17 +163,17 @@ function parseGraph(){
if(capacity<0){
throw new Error("Zahl "+edgesLineSplit[1]+" ist negativ");
}
- if(fromName==toName){
- throw new Error("Knoten kann keine Kante zu sich selbst haben");
- }
if(verticesMap[fromName]==null){
throw new Error("Knoten "+fromName+" nicht vorhanden");
}
if(verticesMap[toName]==null){
throw new Error("Knoten "+toName+" nicht vorhanden");
}
+ if(fromName==toName){
+ throw new Error(fromName+" hat eine Schlinge. Schlingen erlaube ich nicht, weil sie nichts zum Ergebnis beitragen.");
+ }
if(edgesCapacity[fromName][toName]>0/*||edgesCapacity[toName][fromName]>0*/){//Kommentar wegmachen, um doppelte Kanten nicht zuzulassen
- throw new Error("Kante von "+fromName+" nach "+toName+" kommt mehrfach vor");
+ throw new Error("Kante von "+fromName+" nach "+toName+" kommt mehrfach vor. Doppelte Kanten sind nur in entgegengesetzter Richtung erlaubt.");
}
edgesCapacity[fromName][toName]=capacity;
}
@@ -181,6 +181,7 @@ function parseGraph(){
statusSim.innerText="Graph neu erstellt";
}catch(error){
statusDef.innerText=error.toString();
+ statusSim.innerText="Graph neu erstellen versucht, aber es gab einen Fehler bei der Erstellung";
}
calculatePossibleNextSteps();
if(bfs()==undefined){