Bonjour à tous.

J'ai une nouvelle fois un petit problème lors de la compilation.
Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
55
56
57
58
59
type couleur=(Bleu,Blanc,Rouge);
 
procedure ChargeTab(var t:array of couleur;var long:integer);
var k:integer;
begin
	writeln('Veuillez indiquer la longueur du tableau: ');
	readln(long);
	writeln('Veuillez introduire les couleurs dans le tableau: ');
	for k:=1 to long do
			readln(t[k]); (* Ici, lors de la compilation, 
le compilateur me renvoie cette erreur: Can't read or write variables of this type*)
 
	end;
 
procedure echange(var x,y:couleur);
var temp:couleur;
begin
	temp:=x;
	x:=y;
	y:=temp;
end;
 
procedure DrapeauHollandais(var t:array of couleur;n:integer; var dbl,dr:integer);
var k:integer;
begin
	dbl:=0;k:=0;dr:=n-1;
	while (k<dr) do
		begin
			if (t[k]=Bleu) then
				begin
					echange (t[k],t[dbl]);
					inc(dbl);inc(k);
				end
			else if (t[k]=Blanc) then
				inc(k)
			else
				begin
					echange(t[k],t[dr]);
					dec(dr);
				end;
		end;
end;
 
procedure afficheTab(const t:array of couleur;const long:integer);
var k:integer;
begin
	for k:=1 to long do
		write(t[k],'   ');
	writeln;
end;
 
 
var t:Array of couleur; n,dbl,dr:integer;
begin (* Programme principal*)
	ChargeTab(t,n);
	afficheTab(t,n);
	DrapeauHollandais(t,n,dbl,dr);
	afficheTab(t,n);
end.
Merci une nouvelle fois de me lire