1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
uses
Math; { RandomRange }
type
TEquipe = char;
TEquipes = array of TEquipe;
function Pick(var aTableau: TEquipes; const aIndex: integer): TEquipe;
begin
result := aTableau[aIndex];
aTableau[aIndex] := aTableau[High(aTableau)];
SetLength(aTableau, High(aTableau));
end;
function RandomPick(var aTableau: TEquipes): TEquipe;
begin
result := Pick(aTableau, RandomRange(0, High(aTableau)))
end;
const
{ Équipes. }
T1: array [0..7] of TEquipe = ('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H');
var
{ Équipes à piocher. }
T2: array of TEquipe;
{ Rencontres. }
T3: array [0..3, 0..1] of TEquipe;
i, j: integer;
begin
Randomize;
{ Remplir le tableau des équipes à piocher. }
SetLength(T2, 8);
Move(
T1[0],
T2[0],
8
);
{ Remplir le tableau des rencontres. }
for i := 0 to 3 do
for j := 0 to 1 do
T3[i, j] := RandomPick(T2);
for i := 0 to 3 do
WriteLn(
'rencontre n°', Succ(i),
' : équipe ', T3[i, 0],
' contre équipe ', T3[i, 1]
);
end. |
Partager