Also lun...
Es gibt bei deinen Programm das Problem, dass wenn du immer auf den "Ratebutton" klickst eine neue Zuffalsszahl erstellst. Und die dann überprüfst.
Außerdem ist es nicht sinnvoll
Delphi-Quellcode:
for i := x to y do
TLabel.Caption := text
zu schreiben, weil der benutzer wird nur das Enderegbnis sehen.
Mach stattdessen das so:
eingabezahlen.Caption := IntToStr(VersuchsZahl[1]) + ' ' + IntToStr(VersuchsZahl[2]) + ' ' + IntToStr(VersuchsZahl[3]) + ' ' + IntToStr(VersuchsZahl[4])
Ürbigends: Deklariere GLOBALE Variablen!
I wird imer dann gelöscht, wenn die Prozedur beendet wird. Und das wird nicht erst nach 4x Raten sein!
Auch musst du die Anzahl der Versuche um eins erhöhen, wenn man einen neuen Versuch bekommt.
Außerdem fehlt ganz zum Schluss ein begin/end, oder vielleicht nicht?!
Außerdem: Rücke den Code besser ein, damit man noch die Zusammenhänge erkennt.
Ich wills mal erklären:
Wenn ich sowas lese
Delphi-Quellcode:
begin
VersuchsZahl[i] := ratezahl;
inc(i);
for i := 0 to 4 do
eingabezahlen.Caption := IntToStr(VersuchsZahl[i]);
ausgabeedt.Caption := IntToStr(randomzahl);
end
, dann denke ich folgendermaßen nach:
Delphi-Quellcode:
VersuchsZahl[i] := ratezahl;
inc(i);
for i := 0 to 4 do begin
eingabezahlen.Caption := IntToStr(VersuchsZahl[i]);
ausgabeedt.Caption := IntToStr(randomzahl);
end;
Und TADA: auf einmal wird der letzte befehl 4x ausgeführt (obwohls ja net so ist).
Deshalb ist es wichtig, den Code so zu formatieren, dass es nicht 1000 Ausnahmen der Ausnahmen gibt, sondern ganz klar sagt: "eine Ebene = ein Tab"