![]() |
hangman programm - delphi 3
Hallo Leute,
wir nehmen gerade im Info-Unterricht das Hangman Programm durch und müssen selber ein komplettes Programm programmieren. Bis jetzt hin haben wir nur das komplette Layout, wissen aber gar nicht wie wir anfangen sollen und wie wir den Quelltext gestalten sollen. Könnte uns irgendjemand mit einem Lösungsansatz aushelfen? Am besten nicht zu kompliziert da wir noch nicht sehr lange mit delphi arbeiten. Liebe Grüße Eduard |
Re: hangman programm - delphi 3
Guten Morgen,
was hast Du denn bereits fertig? Stelle den Code doch mal ein. Ich würde das Problem mit einer TImageList angehen, wo dann als Bild die verschiedenen Zustände des Galgenmännchens hinterlegt sind. Grüße Klaus |
Re: hangman programm - delphi 3
Willkommen in der DP
eine Liste von Wörtern erstellen, dann eine Zufällige heraussuchen und dann mit zb. Buttons schauen ob es der Richtige Buchstabe ist |
Re: hangman programm - delphi 3
HAb so was auch noch nie gemacht aber wie wärs mit alle Buchstaben des Lösungswortes in einem dynamischen 2-Dimensionalen Arrays Der erste Wert gibt den Buchstaben an den zweiten ob man ihn schon hat (zb A=hat ihn; b= hat ihn nicht) dann abfragen ob der Buchstabe in einem ist dann diese abfragen ob sie schon geraten wurden Und den Galgen mit Canvas zeichnen
Und nach jeder Runde abragen ob der Galgen "voll" ist oder ob alle Buchstaben geraten sind Hoffe konnte dir Helfen Mikender [GedankenBlitz] Merk dir die schon geratenen Buchstaben dann kannst dus mit nem Normalen eindimensionalen machen[/GedankenBlitz] |
Re: hangman programm - delphi 3
Bis jetzt haben wir wirklich nur das Layout mit einem Label für das Ratwort, einem Editfeld für die Einabe des Buchstabes und ein Label zur Fehleranzeige.
Außerdem natürlich eine Canvas. Unser Lehrer hat uns vorgegeben das mit einem Array in dem die Ratwörter sind zu lösen, ist aber nun krank und unser Kurs ist auf sich alleine gestellt. Könnte uns jemand vielleicht konkret sagen wie wir anfangen sollen? Wir haben bis jetzt halt nur ein Array mit den Ratewörten erstellt. Grüße Eduard |
Re: hangman programm - delphi 3
|
Re: hangman programm - delphi 3
Zitat:
Gibt es keine anderen, einfachereren Lösungen? Der Weg ist uns ja einigermaßen klar: Wir deklarieren ein Array aus dem ein paar Ratewörter per Randomize ausgegeben werden, der Benutzer gibt einen Buchstaben im Ed-Feld ein und das Programm prüft ob der Buchstabe im Wort enthalten ist. Ist er enthalten gehts zum nächsten Buchstaben, ist er nich enthalten wir per lineto usw. auf der Canvas etwas gezeichnet. Wir haben nur keinerlei Ahnung, wie und mit welchen Befehlen wir das Programm angehen sollen :( |
Re: hangman programm - delphi 3
Ihr könnt doch per for-Schleife das Array durchgehen und schauen ob das Zeichen übereinstimmt.
Delphi-Quellcode:
Muss natürlich noch angepasst werden, nur erstmal ein Denkanstoß.
if Length(Eingabe.Text) = 1 then
for i := 0 to High(Array) do if LowerCase(Array[i]) = LowerCase(Eingabe.Text) then ... else ...; |
Re: hangman programm - delphi 3
Habe mal unser Programm hochgeladen, wie man sieht, sieht man noch nicht viel...
![]() Durch einen Klick auf Neues Spiel wird per Randomizer ein Wort aus dem Array geholt. Jetzt müssen wir es irgendwie schaffen, dass man einzelne Buchstaben im Ed-Feld eingeben kann um diese dann mit dem Prüfen-Button zu kontrollieren (ob sie im Wort enthalten sind). |
Re: hangman programm - delphi 3
erst einmal wprde ich sagen, dass ein Download eines gepackten archives auch ohne Werbung geht und zwar hier in der DP. Rar sollte so klein sein, dass die Grenze nicht überschritten wird. Also: das nächste mal unterm Posttext das Attachment hinzufügen.
rollstuhlfahrer nachtrag: Das sollte weiterhelfen
Delphi-Quellcode:
var fehlversuche: Cardinal; // kann ja eigentlich nicht negativ werden ;)
procedure TMain.BBPruefenClick(Sender: TObject); begin if Pos(EdBuchstabe.Text, Ratewort) <> 0 then begin // Vorhanden //... end else begin // nicht vorhanden Fehlversuche := Fehlversuche + 1; Label5.Caption := IntToStr(Fehlversuche); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz