AGB  ·  Datenschutz  ·  Impressum  







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

Labyrinth

Ein Thema von Saminem · begonnen am 26. Mai 2011 · letzter Beitrag vom 27. Mai 2011
Antwort Antwort
Saminem

Registriert seit: 18. Aug 2010
14 Beiträge
 
#1

Labyrinth

  Alt 26. Mai 2011, 22:19
Moin Leute
stelle mal seit langem wieder mal ne Frage.
HAben dies mal in Informatik die Aufgabe bekommen ein Labyrinth zu zeichnen
und dieses Labyrinth soll dann autonom gelöst werden.
Hier zu hat uns unser Lehrer erklärt wie wir einen stack programmieren.
Bei mir gibt es aber schon beim zeichnen eines Labyrinthes ein Problem hier mal der quellecode.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var n,hoehe,breite,hoehe1,breite1 :integer;
begin
  hoehe1:= trunc(image1.height / (strtoint(edit1.Text)));
  breite1:= trunc(image1.width / strtoint(edit1.Text));
  hoehe:= trunc(image1.height / (strtoint(edit1.Text)));
  breite:= trunc(image1.width / strtoint(edit1.Text));
  For n:=0 to strtoint(edit1.Text) do
  begin
  image1.Canvas.Rectangle(breite,hoehe,(image1.width - breite),(image1.height - hoehe));
  breite:=breite1 + breite;
  hoehe:=hoehe1 + hoehe;
  end;

end;
Das Problem ist einfach das er nicht zeichnet liegt es villeicht an der for schleife und wäre hier eine repeat schleife besser
Danke schon mal im vorraus
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Labyrinth

  Alt 26. Mai 2011, 23:24
Auch wenn es neu für dich ist, es gibt hier eine Suchfunktion (und gerade das Labyrinth-Thema wurde hier schon x-mal behandelt)

Hier im Forum suchenLabyrinth Hier im Forum suchenLabyrinth erstellen

Gibt zum Beispiel diesen Treffer
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.993 Beiträge
 
Delphi 12 Athens
 
#3

AW: Labyrinth

  Alt 27. Mai 2011, 00:04
Wo soll hier ein Stack versteckt sein?

Und die Art der Schleife ist vollkommen egal, also egal ob For, While oder Repeat ... das macht keinen Unterschied
wenn es eigentlich nur die Berechnungen und Befehle innerhalb der Schleife geht.

Tipp: Debuggen
Man lege sich einen Haltepunkt an den Anfang der Schleife und wärend man die Schleife Befehl für Befehl durchgeht, schaut man sich die Werte der Variablen und Berechnungen an und vergleicht diese mit den Werten, welche man an dieser Stelle erwarten würde.


Wo soll hier eigentlich ein Labyrinth versteckt sein?

Ich seh nur Rechtecke, welche ineinander gezeichnet werden und das zuoft.

Du hast doch bestimmt vergessen den Brush zu entfernen?
Also die Rechtecke sind doch bestimmt "gefüllt"?
Wenn ja dann werden anfangs Rechtecke ineinander gemalt und ab der hälfte fangen diese an sich wieder gegenseitig zu übermalen, bis das Letze alles wieder gelöscht/übermalt hat.

Füge mal diese 2 Zeilen ein und schau ob etwas und was passiert.
Delphi-Quellcode:
hoehe:=hoehe1 + hoehe;
//
Application.ProcessMessages;
Sleep(1000);
//
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  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 02:24 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