Hi,
ich bin hier im Forum neu und hab folgendes Problem. Ich bin dabei ein Programm zu schreiben, welches ein als .png gespeichertes Labyrinth lösen soll. Der Startpunkt ist vorgegeben, das Ziel jedoch nicht.
Falls jemand das Bild mit dem Labyrinth sehen will, findet mans hier:
Meine Idee wäre gewesen vom Startpunkt aus (weißes Feld) alle anliegenden Pixel zu überprüfen, ob sie schwarz sind oder nicht. Wenn schon, dann mach nichts. Falls nicht, färbe den Pixel weiß und beginne von vorne.
Ich bin in der Programmiersprache Java noch relativ neu, deswegen weiß ich noch nicht wirklich, was es hier alles an möglichkeiten gibt. Ich hab schon im Internet geforscht und versucht ein paar Sachen aus meiner urspünglichen Programmiersprache C zu übernehmen, komme jedoch nicht weiter.
Mein bisheriger Code:
Bevor jetzt irgendwer fragt warum ich es nicht in C mache, wenn es schon mein urprüngliche Sprache ist: Die Vorgabe ist, dies in Java zu lösen.
Könnte mir irgendwer helfen dieses Rätsel zu lösen bzw. zumindest einen Lösungsansatz zu finden? Falls es noch irgendwelche Fragen gibt, immer her damit.
ich bin hier im Forum neu und hab folgendes Problem. Ich bin dabei ein Programm zu schreiben, welches ein als .png gespeichertes Labyrinth lösen soll. Der Startpunkt ist vorgegeben, das Ziel jedoch nicht.
Falls jemand das Bild mit dem Labyrinth sehen will, findet mans hier:
Meine Idee wäre gewesen vom Startpunkt aus (weißes Feld) alle anliegenden Pixel zu überprüfen, ob sie schwarz sind oder nicht. Wenn schon, dann mach nichts. Falls nicht, färbe den Pixel weiß und beginne von vorne.
Ich bin in der Programmiersprache Java noch relativ neu, deswegen weiß ich noch nicht wirklich, was es hier alles an möglichkeiten gibt. Ich hab schon im Internet geforscht und versucht ein paar Sachen aus meiner urspünglichen Programmiersprache C zu übernehmen, komme jedoch nicht weiter.
Mein bisheriger Code:
Code:
public class LindwurmLoesen {
public static void main(String[] args) {
File file = new File("/*Dateipfad*/");
BufferedImage image = ImageIO.read(file);
System.out.println("Breite:" + image.getWidth());
System.out.println("Höhe:" + image.getHeight());
int startx = 659;
int starty = 488;
for(int i = 0; i <= 10; i++) { // andere bedingung finden
// überprüfe ob anliegende pixel von start-pixel schwarz sind
// wenn ja: mache gar nichts
// wenn nein: färbe weiß und wiederhole prüfung
if(/*anliegende pixel von aktuellem pixel != schwarz*/) {
// färbe pixel weiß
continue;
}
else if(/*anliegende pixel von aktuellem pixel == schwarz*/) {
// mache nichts
continue;
}
}
System.out.println("Programm abschgeschlossen!");
}
}
Bevor jetzt irgendwer fragt warum ich es nicht in C mache, wenn es schon mein urprüngliche Sprache ist: Die Vorgabe ist, dies in Java zu lösen.
Könnte mir irgendwer helfen dieses Rätsel zu lösen bzw. zumindest einen Lösungsansatz zu finden? Falls es noch irgendwelche Fragen gibt, immer her damit.