Registriert seit: 18. Feb 2005
286 Beiträge
Delphi 2010 Enterprise
|
Re: Kartenspiel: Wie Karten "kodieren" (Wert, Farb
22. Mär 2010, 01:56
Z.B. so:
Delphi-Quellcode:
type
TCardStack = array[0..31] of TCard;
procedure SetupCardStack( var CardStack: TCardStack);
var
S: TSuit;
V: TCardValue;
I: Integer;
begin
I := 0;
for S := Low(TSuit) to High(TSuit) do
for V := Low(TCardValue) to High(TCardValue) do
begin
with CardStack[I] do
begin
Suit := S;
Value := V;
end;
Inc(I);
end;
end;
procedure ShuffleCardStack( var CardStack: TCardStack; R: Integer = 1000);
procedure ExchangeCards( const Index1, Index2: Integer);
var
Temp: TCard;
begin
Temp := CardStack[Index1];
CardStack[Index1] := CardStack[Index2];
CardStack[Index2] := Temp;
end;
begin
while R > 0 do
begin
ExchangeCards(Random(32), Random(32));
Dec(R);
end;
end;
var
CardStack: TCardStack;
begin
SetupCardStack(CardStack);
ShuffleCardStack(CardStack);
end;
"Es gibt keine schlimmere Lüge als die Wahrheit, die von denen, die sie hören, missverstanden wird."
|