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 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
| Unit Manipuler_file;
Interface
Const n = 10;
Type tableau=array[1..n]of integer;
Function File_Vide(d,f : integer) : boolean;
Function File_Pleine(d,f : integer) : boolean;
Procedure Remplire_file( Var T:Tableau ; Var f: integer);
Procedure Afficher(T: Tableau; d,F:integer);
Procedure Enfiler( Var T:Tableau ;Var f: integer; d,y : integer );
Procedure Defiler( Var T:Tableau ;d,f : integer );
Implementation
Function File_Vide(d,f : integer) : boolean;
begin
if d=f then
File_Vide := True
else
File_Vide := False;
end;
Function File_Pleine(d,f : integer) : boolean;
begin
if d=(f+1)mod n then
File_Pleine := True
else
file_Pleine := False;
end;
Procedure Remplire_file( Var T:Tableau ; Var f: integer);
var i : integer;
begin;
for i:= 1 to ( f-1) do
begin
write('donnez T[',i,']=');
read ( T[i]);
end;
end;
Procedure Afficher(T: Tableau; d,F:integer);
var i:integer;
begin
i:=1;
while i<=10 do
begin
if i<d then
write('x',' ')
else
if i<f then
write (T[i],' ')
else
write('x',' ');
i:=i+1;
end;
end;
Procedure Enfiler( Var T:Tableau ;Var f: integer; d,y : integer );
begin
if File_Pleine(d,f) = true Then
writeln ('La fille est pleine ')
else
begin
T[f]:=y;
f:=(f+1);
if f>n Then
f:=1;
end;
afficher(T,d,f);
end;
Procedure Defiler( Var T:Tableau ;d,f : integer );
begin
if File_Vide(d,f) = true Then
writeln (' La fille est vide ')
else
begin
d:=(d+1);
if d>n Then
d:=1;
end;
afficher ( T,d,f);
end;
End. |
Partager