Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 19. März 2005 19:18 Titel: Zahlenraten mit Delphi |
|
|
Hallo,
ich soll (für die Schule) mit Delphi so ein kleines Zahlenraten-Spielchen machen.
Aber irgendwie klappt es nicht wirklich.
Ich hab die Datei mal angehängt; vielleicht kann ja mal jemand danach gucken und mir dann sagen was ich machen muss...?!?!
es soll einfach eine zahl eingeben werden, und wenn die mit der zahl, die sich der PC ausdenkt übereinstimmt, dann soll Label3 den Text 'Treffer!' ausgeben und wenn nicht dann soll 'leider daneben' erscheinen.
Wäre echt cool, wenn mir jemand helfen würde _________________ please me |
|
Nach oben |
|
|
|
Keeper Gast
|
Verfasst am: 19. März 2005 20:01 Titel: |
|
|
Das ist so ziemlich das Einfachste, was es gibt.
Du musst die beiden Zahlen mit einer if-Abfrage vergleichen. Das sähe folgendermaßen aus:
Code: | if eingegebene_zahl = vorgegebene_zahl then
begin
[...]
end
else
begin
[...]
end; |
Berichtigt mich wenn etwas nicht stimmt, habe schon länger nicht mehr mit Pascal gearbeitet.
MfG Keeper |
|
Nach oben |
|
|
Pr0g
Anmeldungsdatum: 15.02.2005 Beiträge: 90 Wohnort: Düsseldorf
|
|
Nach oben |
|
|
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 20. März 2005 11:38 Titel: |
|
|
okay....
ich habs dann jetzt hinbekommen *freu*
aber ich hätte noch eine Frage:
folgendes hat uns unser lehrer an die tafel geschrieben:
Code: | randomize;
x:=random(100)+1;
y:=StrToInt(edit1text),
if x=y then label1.captian:='Treffer'
else label1.captian:='Daneben', |
kann man das allein mit diesen Angaben überhaupt hinbekommen?? _________________ please me |
|
Nach oben |
|
|
Pr0g
Anmeldungsdatum: 15.02.2005 Beiträge: 90 Wohnort: Düsseldorf
|
Verfasst am: 20. März 2005 12:27 Titel: |
|
|
Klar, vergleichen wir es doch einfach mal mit dem Beispielcode von mir.
Das erste was an Code geschrieben wurde war das:
Code: | private
{ Private-Deklarationen }
Zahl: Integer; |
Also eine Variable, der Code deines Lehrers nutzt zwar zwei, aber es ist beides möglich.
Dann haben wir folgendes im OnCreate der Form:
Code: | //Zufallsgenerator initialisieren
Randomize;
//Zufallszahl zwischen 1 und 100 speichern
Zahl := Random(100) + 1; |
Das sind schon mal die ersten beiden Befehle deines Lehrers, nur dass er statt "Zahl" einfach "x" nutzt:
Code: | randomize;
x:=random(100)+1; |
Dann mal den OnClick Code des Buttons:
Code: | //prüfen, ob die Zahl richtig ist
if StrToInt(Edit1.Text) = Zahl then
//wenn ja, dann "treffer" anzeigen
Label2.Caption := 'Treffer'
else begin
//wenn nein, dann "leider falsch" anzeigen
Label2.Caption := 'Leider falsch';
//und das Edit leeren
Edit1.Text := '';
//und den Cursor im Edit plazieren
Edit1.SetFocus;
end; |
Er ist etwas größer als der deines Lehrers, bei einer falschen Angabe das Edit noch geleert und der Cursor hineingesetzt wird. Sonst machen beide Codes aber das gleiche, nur das dein Leher den Wert des Edits erst in eine "y"-Variable speichert und dann vergleicht. _________________ http://webcraft.org/button_ani.gif http://ohs.pr0g.net/button_ani.gif |
|
Nach oben |
|
|
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 20. März 2005 12:31 Titel: |
|
|
mhhh...
dann probier ich das nachher nochmal mit den Angaben meines Lehrers...
verstanden hab ichs ja jetzt soweit =)
schonmal vielen vielen Dank für die nette Hilfe! _________________ please me |
|
Nach oben |
|
|
|