AGB  ·  Datenschutz  ·  Impressum  







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

Hangman Problem

Ein Thema von Dazek1x · begonnen am 20. Mär 2008 · letzter Beitrag vom 20. Mär 2008
Antwort Antwort
Dazek1x

Registriert seit: 20. Mär 2008
4 Beiträge
 
#1

Hangman Problem

  Alt 20. Mär 2008, 12:42
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;
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Hangman Problem

  Alt 20. Mär 2008, 12:47
Hi und herzlich Willkommen in der 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.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Hangman Problem

  Alt 20. Mär 2008, 12:47
Hallo,

ich könnte mir das so vorstellen:

Delphi-Quellcode:
for i:= 1 to length(x) do
  begin
   if x[i] = b then
     begin
       z[i] := b;
     end
  end
edit1.text := z;
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Dazek1x

Registriert seit: 20. Mär 2008
4 Beiträge
 
#4

Re: Hangman Problem

  Alt 20. Mär 2008, 12:50
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.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Hangman Problem

  Alt 20. Mär 2008, 13:01
i ist eine Laufvariable z.B vom Typ Byte oder Integer.
Sie wird benutzt um einzelne Zeichen des Strings anzusprechen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Dazek1x

Registriert seit: 20. Mär 2008
4 Beiträge
 
#6

Re: Hangman Problem

  Alt 20. Mär 2008, 13:06
ich hab das jetzt so
Delphi-Quellcode:
for p:= 1 to length(x) do
  begin
   if x[p] = b then
     begin
       z[p] := b;
     end
  end
  edit1.text := z;
eingefügt. allerdings sagt er mir dann in dieser zeile     z[p] := b; [Fehler] Backu.pas(66): Inkompatible Typen: 'Char' und 'String'
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Hangman Problem

  Alt 20. Mär 2008, 13:13
Zitat von Dazek1x:
ich hab das jetzt so
Delphi-Quellcode:
for p:= 1 to length(x) do
  begin
   if x[p] = b then
     begin
       z[p] := b;
     end
  end
  edit1.text := z;
eingefügt. allerdings sagt er mir dann in dieser zeile     z[p] := b; [Fehler] Backu.pas(66): Inkompatible Typen: 'Char' und 'String'
Hi,

ich denke, dass du b als String delklariert hast, also b: String; z[p] ist aber nur das p-te Zeichen von z, und das ist vom Typ Char. du musst also entweder
- b als Char casten,: z[p] := Chr(b); oder
- das erste zeichen von b nehmen z[p] := b[1]; Edit: Und wie Die Muhkuh schon gesagt hat, bennen deine Variablen um. da blickst du in ner Woche nicht mehr durch!
Ansgar
  Mit Zitat antworten Zitat
Dazek1x

Registriert seit: 20. Mär 2008
4 Beiträge
 
#8

Re: Hangman Problem

  Alt 20. Mär 2008, 13:18
vielen dank. so klappts.
  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 18:25 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