Einzelnen Beitrag anzeigen

FabianIBerlin

Registriert seit: 6. Mär 2005
43 Beiträge
 
#1

Randomize in einer klasse will nicht wie ich

  Alt 25. Mär 2005, 20:56
Ich habe eine Klasse geschrieben die vorerst nur einen würflen simulieren soll und diese klasse wird von 5 andersnamigen "würfeln" benutz. wenn ich diesen prozess jedoch aufrufe sind alle ergebnisse gleich. was kann man da machen?

Code:
  Wuerfel1, Wuerfel2, Wuerfel3, Wuerfel4, Wuerfel5, Wuerfel6 :TWuerfel;

implementation

{$R *.dfm}

procedure TForm1.AnzeigeAktualisieren;
begin
  Dice1label.Caption := IntToStr(Wuerfel1.GetWuerfelzahl);
  Dice2label.Caption := IntToStr(Wuerfel2.GetWuerfelzahl);
  Dice3label.Caption := IntToStr(Wuerfel3.GetWuerfelzahl);
  Dice4label.Caption := IntToStr(Wuerfel4.GetWuerfelzahl);
  Dice5label.Caption := IntToStr(Wuerfel5.GetWuerfelzahl);
end;

procedure wuerfeln(nummer : integer);
begin
  case nummer of
    1 : Wuerfel1.Wuerfeln;
    2 : Wuerfel2.Wuerfeln;
    3 : Wuerfel3.Wuerfeln;
    4 : Wuerfel4.Wuerfeln;
    5 : Wuerfel5.Wuerfeln;
  end;
end;

procedure TForm1.WuerfelnBtnClick(Sender: TObject);
var i : integer;
begin
  for i := 1 to 6 do
    wuerfeln(i);
  AnzeigeAktualisieren;
end;
und in der klasse sieht das so aus:

Code:
procedure TWuerfel.Wuerfeln;
begin
  randomize;
  Wuerfelzahl := Random(5)+1;
end;
  Mit Zitat antworten Zitat