# Die Türme von Hanoi



## NikitaVans (17. Sep 2012)

Ja hi leute und zwar habe ich das problem, dass ich 4 monate krank war und nun in ziemlich allen fächern ziemlich zurück stehe. Vor allem in Informatik und Mathe aber auch egal. 
Auf jedenfall bin ich jetzt mit meiner Informatik Ahnung ziemlich am anfang und kann vieles nicht mehr programmieren und vllt hat ja einer zeit, mir öfters mal zu helfen...^^ wir müssen immoment die Türme von Hanoi programmieren. 
An sich nciht so schwierig, mit System.out.println, aber wir sollen das grafisch machen. ja und ab da kann ich es schon nicht mehr, mein lehrer meinte mithilfen von ArryLists und einem großen panel und naja egal. 

soweit bin ich: 


```
public class hanoi {

    int starthoehe;
    int bewegungen;


       public void bewege ( char von , char nach ) {

       System.out.println ( "Scheibe von " + von + " nach " + nach ) ;
       bewegungen++;
      }
    
      public  void turm( char start , char ziel , char ablage , int hoehe ) {
        
        if ( hoehe >1) turm (start,ablage, ziel, hoehe -1);
        bewege (start ,ziel ) ;
        if ( hoehe >1) turm( ablage ,ziel,start, hoehe -1);
      }
}
```
ja kann mir, wenn einer etwas zeit hat, mir vllt helfen? also am besten iwie per skype oder so... wäre nett


----------



## SlaterB (18. Sep 2012)

Swing ist ein Thema für Wochen/ Monate mit zig Grundlagen, da kann man hier im Forum nichts zu erklären,
aber du fragst ja auch bisschen nach was anderem, nur wenig realistisch, wer hilft mir beim Neudecken des Dachs meines Hauses?

'tower of hanoi + java swing' findet in Suchmaschinen manches, wobei viele Beispiele nicht sonderlich geeignet sind,
bisher am besten finde ich
http://myweb.stedwards.edu/laurab/cosc2125/HanoiFrame.java

allerdings mit 'StackV' im Quellcode, das durch die normale Stack-Klasse ersetzen und 

```
copyTower.addAll(t); // make a copy of the tower we are drawing
```
dort wo die unbekannte copy-Methode versucht wird, dann läuft es bei mir einigermaßen,
kannst versuchen davon etwas zu lernen/ ähnliches zu bauen


----------



## NikitaVans (19. Sep 2012)

ja das ist zwar schön und gut allerdings verstehe ich den Quelltext nicht.....


----------



## Firephoenix (19. Sep 2012)

Dann dürftest du mit der Aufgabe ein ziemliches Problem bekommen.
Womit du anfangen könntest, wäre die Logik für Hanoi so zu Programmieren, das du den Kram auf der Konsole ausgeben kannst, noch völlig unabhängig von der GUI.
Die Logik müsstest du aber auch zu dem Zeitpunkt schon so schreiben, das du diese Schrittweise ausführst, oder die Möglichkeit hast bei jedem Schritt dir den aktuellen Zustand der Türme auszulesen.

Wenn das ganze funktioniert schreibst du dir eine angepasste Gui die dieses Modell nimmt, den Zustand ausließt und visualisiert.
Entsprechendes Material zu Swing findest du dann unter anderem hier:
Trail: Creating a GUI With JFC/Swing (The Java™ Tutorials)
http://www.techfak.uni-bielefeld.de/~jkrueger/documents/talks/swing_kompakt.pdf
http://www.java-forum.org/spiele-multimedia-programmierung/54795-quaxli-2d-spiele-tutorial.html

Gruß


----------



## NikitaVans (21. Sep 2012)

ja ich sagte ja habe ein riesen problem..... ich war über 4 Monate im Krankenhaus und bin erst seit letzter Woche Medikamenten frei, ich habe gefehlt als wir angefangen haben die Stack Methoden zu lernen....


----------



## SlaterB (21. Sep 2012)

seit dem 19. sind zwei Tage vergangen, Zeit um durchaus einen gewissen Teil der nötigen Dinge zu lernen,

nicht nachprüfbare Begründungen kannst du dir hier sparen, 
jeder der auf die Schule pfeift und seine Aufgaben von anderen erledigen läßt würde genau dasselbe schreiben, hat keine Bedeutung
(klingt im Zweifel hart, einfach nur die objektiven Fakten herauslesen, nicht persönlich nehmen)

das Forum kann dir nicht Java beibringen, das ist eine Arbeit von zig Stunden, 
du musst ein Lehrbuch nehmen und lernen, gibt auch Video-Tutorials, alles im Internet zu finden
oder mit Geld menschliche Nachhilfe.., in deinem Umfeld umso geeigneter zu finden


----------



## NikitaVans (24. Sep 2012)

dieser vorwurf klingt sogar äußerst hart und es fällt mir ehrlich gesagt ziemlich schwierig, das nur Objektiv zu sehen, auch wenn ich es nachvollziehen kann.

Das mit dem Nachweisbar ist nicht das problem, Krankenhausbericht, überweisungsschein attesyte versicherungsrechnung etc. kann ich alles vorweisen.

Ich glaube ich wurde missverstanden. Ich will nicht, das mir jemand komplett Java beibringt, sondern nur als stütze dient. Der sich zum Beispiel mal ne halbe stunde zeit nimmt über skype o.ä. und mir hilft. Nicht die Arbeit für mich macht, sondern den ich fragen kann, wenn ich etwas nicht verstehen oder der mir tipps geben kann. 

Die andere Sache mit Nachhilfe ist die, das ich jetzt in Mathe, Biologie und in Sozialwissenschaft Nachhilfe habe, also quasi jeden Tag in der Woche. Ausserdem kannst du dir ja denken, das das ziemlich teuer ist ( 170€ pro [STRIKE]Woche[/STRIKE]). Also ist weitere Nachhilfe aufgrund von Zeitmangel und vor allem wegen dem finanziellen nicht möglich. 

Wenn es keinen gibt, der sich mal Zeit nehmen könnte, bin ich hier tatsächlich falsch und entschuldige mich für den aufwand

MfG


----------



## Firephoenix (24. Sep 2012)

Wenn du konkrete Fragen hast und einfach jemanden brauchst der mal drüber schaut kannst du dich gerne registrieren und mir ne PN schreiben.
Hilfestellung beim durcharbeiten oder bei Verständnisproblemen gebe ich gerne, aber ich mache keinen Online-Kurs und löse auch keine Aufgaben (wobei das hier eigentlich eh selbstverständlich sein sollte) 

Gruß


----------



## KranzKrone (19. Sep 2013)

Sinn voll ist es deine Logik mit den Türmen in einen Thread zu packen und die GUi in einen anderen Thread zu packen. Mit Hilfe des Observerpattern kannst du den Status der Türme abfragen und deine Gui mit einfach Steuern. 

Eine kleine Anleitung findest du hier:
MVC (Design Pattern) - Truppel

Und ein weiteres Beispiel hier:
Kleines MVC Beispiel (Java) - Truppel

LG Krone


----------

