Einzelnen Beitrag anzeigen

kunta

Registriert seit: 14. Nov 2009
Ort: Aachen
7 Beiträge
 
#1

Zufallszahlen, wer kann helfen?

  Alt 14. Nov 2009, 07:44
In einem Experiment sollen die Zahlen von 1-16 (in genau dieser Reihenfolge) mittels eines Zufallgenerators erzeugt werden.
Es gibt insgesamt 16 Durchläufe. Im i-ten Durchlauf wird so lange eine Zufallszahl erzeugt, bis man die Zahl i erhält. Ein solcher Durchlaufwird per ButtonClick auf "Zufall berechnen"gestartet. Die dazu notwendige Anzahl der Versuche soll in ein Stringgrid der Größe 4x4 eingetragen werden. In einem zweiten Stringgrid (ebenfalls Größe 4x4) wird die Zahl i dargestellt.
Benutzt werden soll: randomize, random

Ich habe es selbst versucht aber da ich erst ein paar Tage damit zu tun habe komme ich nicht weiter. Wer kann mir helfen?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
 var Versuche,Zufall :integer;

Begin
Versuche:=0;
  repeat

    inc(Versuche);
    Zufall := random(16) + 1; // mindestens die Zahlen von 1-20, oder was meint Ihrt? Wie stellt man bis "unendlich" ein?
  until Zufall = 1;
  Stringgrid2.Cells[0,0]:=inttostr(Versuche);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  randomize;
  Zufall:=random(16) + 1;
  Versuche := 0;
end;

procedure TForm1.StringGrid1Click(Sender: TObject);
begin
  Stringgrid1.Cells[0,0]:='1';
  Stringgrid1.Cells[1,0]:='2';
  Stringgrid1.Cells[2,0]:='3';
  Stringgrid1.Cells[3,0]:='4';
  Stringgrid1.Cells[0,1]:='5';
  Stringgrid1.Cells[1,1]:='6';
  Stringgrid1.Cells[2,1]:='7';
  Stringgrid1.Cells[3,1]:='8';
  Stringgrid1.Cells[0,2]:='9';
  Stringgrid1.Cells[1,2]:='10';
  Stringgrid1.Cells[2,2]:='11';
  Stringgrid1.Cells[3,2]:='12';
  Stringgrid1.Cells[0,3]:='13';
  Stringgrid1.Cells[1,3]:='14';
  Stringgrid1.Cells[2,3]:='15';
  Stringgrid1.Cells[3,3]:='16';
end;

end.
[edit=alzaimar] Delphi-Tags eingefügt, Code ausgerichtet. Mfg, alzaimar[/edit]
  Mit Zitat antworten Zitat