Glücksrad

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

jonas1996

Betreff: Glücksrad

BeitragMo, Mai 18, 2009 19:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich habe gerade ein kleines Projekt begonnen (Hangman). aBER schon habe ich enen Fehler oder problem. :
Code: [AUSKLAPPEN]
anzahl=4
Data "JONASo","MENSCHen","OTTOr","PETER"
Dim Namen$(anzahl)
For I=1 To anzahl
Read Namen$(I)
Next
SeedRnd MilliSecs()
Nam$=Namen$(Rand(1,anzahl))
Geraten$=String$("#",Len(Nam$))
versuche=1
;LETBVRATE
Repeat
Print versuche+".Versuch: "+Geraten$
eingab$=Input("welcher buchstabe fehlt: ")
eingabe$=Upper(eingab$)
If Instr(Nam$,eingabe$) Then Geraten$ = Left$(Geraten$, Instr(Nam$,eingabe$)-1) +  eingabe$ + Mid$(Geraten$, Instr(Nam$,eingabe$) +1)
versuche=versuche+1
Until Geraten$=Nam$
Print "HADS"
WaitKey
End   


Wenn nun ein ein Buchstabe eingegeben wird ist er schon benutzt und kann nicht nochmal eingegeben werden!
Was kann man dagegen tuen?
Mfg jonas
iLive4myLive.de.tl
programmieren123.de.tl

Nicdel

BeitragMo, Mai 18, 2009 19:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Da ein Buchstabe mehrmals vorkommen kann, würde ich das Ganze mit Instr und einer Schleife lösen.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

coolo

BeitragMo, Mai 18, 2009 19:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Außerdem würde ich dir anraten den Code einzurücken, weil sonst das Programmieren zum Graus werden kann.
http://programming-with-design.at/ <-- Der Preis ist heiß!
That's no bug, that's my project!
"Eigenzitate sind nur was für Deppen" -Eigenzitat

jonas1996

BeitragMo, Mai 18, 2009 19:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich muss ehrlich sagen dass ich keinen blassen schimmer habe wie ich das anstellen soll Embarassed
Könntest du mir bitte ein Bsp. senden?
jonas
iLive4myLive.de.tl
programmieren123.de.tl

SpionAtom

BeitragMo, Mai 18, 2009 20:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Jonas, dein Ansatz würde klappen, wenn du nach jedem richtig geratenen Buchstaben, diesen aus dem String löschen würdest.

Wenn Nam$ = "jonaso"
und "o" getippt wird
sollte hinterher Nam$ = "j_naso" ooder "jnaso" sein.

Am besten wäre aber wirklich eine Schleife, die jeden Buchstaben überprüft.
Code: [AUSKLAPPEN]
For i = 1 to Len(Nam$)
     If eingabe$ = Mid(Nam$, i, 1)
     ...
     ...
     End If
     ...
Next

Das hätte dann den Vorteil, dass dann gleich alle Os verschwinden.
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group