Hallo zusammen,
ich hoffe ihr könnt bzw. wollt mir bei meinem Problem weiter helfen.
Es soll ein Gedächtnistrainer programmiert werden, der folgendermaßen funktionieren soll:
Der Computer schreibt eine Folge von Ziffern auf, die nach 3 Sekunden gelöscht wird. Der Spieler muss sich diese Folge merken und anschließend eingeben. Wenn er richtig geraten hat, wird die Folge um eine Ziffer verlängert. Das Spiel läuft so lange, bis die Ziffernfolge falsch eingetippt wird.
Hierzu mein Quelltext (ist nicht wirklich großartig, was ich bisher geschaft hab
)
Delphi-Quellcode:
unit ZusatzU;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 =
class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
Timer1: TTimer;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
folge:integer;
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
zufallszahl:Integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var zahl, zufallszahl:integer;
begin
zahl:=StrToInt(Edit1.Text);
timer1.Enabled:=false;
if Edit2.Text=Edit1.Text
then
begin
showmessage('
RICHTIG');
zufallszahl:=zufallszahl*10+random(10)
end
else
begin
Edit1.Text:='
';
Edit2.Text:='
';
showmessage('
Wie lautet nun die zahlenfolge?');
end
end;
procedure TForm1.Button2Click(Sender: TObject);
var zufallszahl:integer;
begin
randomize;
zufallszahl:=Random(800)+100;
Edit1.Text:=IntToStr(zufallszahl);
timer1.Enabled:=true;
end;
end.
Jetzt werden die ersten drei zahlen ausgegeben und nach 3 Sekunden gelöscht, und eine message gezeigt.
möchte man nun die Zahlenfolge eingeben, stürzt dass ganze ab.
Ich hätte das gaze vielleicht besser ander machen sollen...
Für die Profies unter euch ist mein problem vermutlich banal
Vielen Dank schon mal für eure Hilfe.