![]() |
Hangman Problem
Ich bin grade dabei Hangman zu programieren. Allerdings habe ich ein problem, wenn ein buchstabe in einem Wort zweimal vorkommt. Bin über jede Hilfe dankbar.
Delphi-Quellcode:
v:= pos(b,x); {x= das lösungswort}
if pos(b,x)<>0 then begin delete(z,v,1); insert(b,z,v) ; {z= das gesuchte wort in strichen, b= der geratene buchstabe} edit1.Text:= z; end; |
Re: Hangman Problem
Hi und herzlich Willkommen in der DP :dp:
Als erstes: Verwende aussagende Variablennamen, dann blickst nicht nur Du besser durch, sondern auch wir, die Deinen Code begutachten müssen. :) Das Problem ist, dass Dein Codeausschnitt nur einmal ausgeführt wird. Da Du aber mehrere Buchstaben ersetzen willst, brauchst Du hier eine Schleife. |
Re: Hangman Problem
Hallo,
ich könnte mir das so vorstellen:
Delphi-Quellcode:
Grüße
for i:= 1 to length(x) do
begin if x[i] = b then begin z[i] := b; end end edit1.text := z; Klaus |
Re: Hangman Problem
danke für die schnelle antwort. den code versteh ich nicht so ganz. was soll i sein und wo müsste ich den code einbauen.
|
Re: Hangman Problem
i ist eine Laufvariable z.B vom Typ Byte oder Integer.
Sie wird benutzt um einzelne Zeichen des Strings anzusprechen. Grüße Klaus |
Re: Hangman Problem
ich hab das jetzt so
Delphi-Quellcode:
eingefügt. allerdings sagt er mir dann in dieser zeile
for p:= 1 to length(x) do
begin if x[p] = b then begin z[p] := b; end end edit1.text := z;
Delphi-Quellcode:
[Fehler] Backu.pas(66): Inkompatible Typen: 'Char' und 'String'
z[p] := b;
|
Re: Hangman Problem
Zitat:
ich denke, dass du b als String delklariert hast, also
Delphi-Quellcode:
z[p] ist aber nur das p-te Zeichen von z, und das ist vom Typ Char. du musst also entweder
b: String;
- b als Char casten,:
Delphi-Quellcode:
oder
z[p] := Chr(b);
- das erste zeichen von b nehmen
Delphi-Quellcode:
Edit: Und wie Die Muhkuh schon gesagt hat, bennen deine Variablen um. da blickst du in ner Woche nicht mehr durch!
z[p] := b[1];
|
Re: Hangman Problem
vielen dank. so klappts.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:28 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