AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Türme von Hanoi (rekursiv)

Ein Thema von rawsoul · begonnen am 15. Jun 2007 · letzter Beitrag vom 15. Jun 2007
Antwort Antwort
Benutzerbild von rawsoul
rawsoul

Registriert seit: 29. Okt 2006
Ort: Düsseldorf
249 Beiträge
 
Delphi 2005 Personal
 
#1

Türme von Hanoi (rekursiv)

  Alt 15. Jun 2007, 18:00
Hey!

Gab es bestimmt schon tausende Male hier im Forum, jedoch hab ich es in der Codelibrary nicht gefunden, ich denke, es fehlt dort.

//Edit: Dies ist die rekursive Variante

Delphi-Quellcode:
program tower_of_hanoi;

{$apptype console}

uses
  sysutils,
  classes,
  windows;

const
  sep='----------';

var
  n:integer;
  s:string;
  sl:tstringlist;
  time:integer;

procedure bewege(n,movefrom,moveto,using:integer);
begin
  if n>0 then
    begin
      bewege(N-1,movefrom,using,moveto);
      sl.Add('bewege '+inttostr(movefrom)+' --> '+inttostr(moveto));
      bewege(N-1,using,moveto,movefrom);
    end
end;

procedure askhanoi;
begin
  writeln('anzahl der scheiben = ?');
  readln(n);
  writeln('berechne...');
  time:=gettickcount;
  bewege(n,1,3,2);
  time:=gettickcount-time;
  writeln('zeit: '+floattostr(time/1000)+' s');
  writeln('speichern? (y/n)');
  readln(s);
  if s='ythen sl.savetofile('hanoi.txt');
  sl.clear;
  writeln;
  writeln(sep);
  writeln;
  askhanoi;
end;

begin
  writeln('turm von bewege');
  writeln(sep);
  writeln('by raw');
  writeln('mail: [email]rawsoulstar@gmail.com[/email]');
  writeln(sep);
  writeln;
  sl:=tstringlist.create;
  askhanoi;
  sl.free;
end.
Das ganze ist geschrieben nach dem Pseudocode von wiki

Bin natürlich für jeden Tipp dankbar - vor allem bezüglich der Geschwindigkeit

LG,
Frank.
Frank Dumont
  Mit Zitat antworten Zitat
fLaSh11
(Gast)

n/a Beiträge
 
#2

Re: Türme von Hanoi (rekursiv)

  Alt 15. Jun 2007, 18:05
wie wäre es, wenn du die TStringList wieder frei gibst am ende?
  Mit Zitat antworten Zitat
Benutzerbild von alleinherrscher
alleinherrscher

Registriert seit: 8. Jul 2004
Ort: Aachen
797 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Türme von Hanoi (rekursiv)

  Alt 15. Jun 2007, 18:39
Ich hab das früher mal in der Schule mit Grafischer Ausgabe programmiert... fall es zum verständnis beiträgt hab ichs mal mit dran gehängt, ist ebenfalls die rekursive Variante. (vielleicht nicht soooo sauber programmiert)
Angehängte Dateien
Dateityp: zip hanoi_grafik_125.zip (2,58 MB, 147x aufgerufen)
„Software wird schneller langsamer als Hardware schneller wird. “ (Niklaus Wirth, 1995)

Mein Netzwerktool: Lan.FS
  Mit Zitat antworten Zitat
Benutzerbild von rawsoul
rawsoul

Registriert seit: 29. Okt 2006
Ort: Düsseldorf
249 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Türme von Hanoi (rekursiv)

  Alt 15. Jun 2007, 18:48
Die Stringlist wird nun wieder freigegeben und beim erneuten Aufruf geleert...
Sehe leider keinen Anhang alleinherrscher, hast du dich vielleicht verklickt?

//Edit: Grad war er noch nicht da... Sorry <.<
Frank Dumont
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz