Einzelnen Beitrag anzeigen
  #6  
Alt 16.12.2000, 05:52
Benutzerbild von Edwin
Edwin Edwin ist offline
registrierter Besucher
Foren-Stammgast 500
 
Registriert seit: 04.06.2000
Ort: Essen
Alter: 51
Beiträge: 845
Edwin ist zur Zeit noch ein unbeschriebenes Blatt (Renommeepunkte ungefähr beim Startwert +20)
Cool

hi,

@philwolters
die 'türme von hanoi' ist folgendes:

man hat 3 senkrechte stangen auf einem holzbrett befestigt. auf einer dieser stangen befinden sich n durchlöcherte scheiben verschiedener größe. es liegt nie eine größere auf einer kleineren scheibe. nun musst du diese n scheiben auf eine andere stange transportieren, wobei du jeweils nur eine scheibe bewegen darfst und nie eine größere auf einere kleinere legen darfst.

@foo2
das problem wird normalerweise per rekursion gelöst, wobei folgender algorithmus eigentlich klappen müsste....ich hoffe, sowas geht auch in logo

quelle, hilf und ziel stehen für die stapel, n ist die anzahl der scheiben...

procedure turm (int quelle, int hilf, int ziel, int n) {
wenn (n = 0)
ausgabe "bewege quelle nach ziel";
sonst {
turm (quelle, ziel, hilf, n-1);
turm (quelle, 0, ziel, 0);
turm (hilf, quelle, ziel, n-1);
}
}

aufgerufen wird das ganze dann mit: turm(0,1,2,n);

wobei 0,1 und 2 für die stapel stehen und n für die anzahl der scheiben, also z.b. für 3 scheiben (turm(0,1,2,3)) müsste die ausgabe lauten:

bewege 0 nach 2
bewege 0 nach 1
bewege 2 nach 1
bewege 0 nach 2
bewege 1 nach 0
bewege 1 nach 2
bewege 0 nach 2

zieh dir einfach mal den algorithmus rein.......falls du noch fragen hast.....immer her damit

gruß.

[Editiert von Edwin am 16.12.2000 um 05:55]
Mit Zitat antworten