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
| Program tri_insertion;
uses wincrt {By Boumaiza Wael _ Boumaiza_S@t};
type
vect=array[1..100] of integer;
var
n:integer;
t:vect;
procedure saisir(var n:integer);
begin
repeat
write('Saisir la taille du tableau: ');
readln(n);
until n in [5..25];
end;
procedure remplir(var t:vect;n:integer);
var
i:integer;
begin
for i:=1 to n do
begin
write('T[',i,']: ');
readln(t[i]);
end;
end;
procedure trier(var t:vect; n:integer;
var
i,j,x,pos:integer;
begin
for i:=1 to n do
begin
pos:=i-1;
while (t[pos]>t[i]) and (pos>=1) do
pos:=pos-1;
pos:=pos+1;
x:=t[i];
for j:=i-1 downto pos do
t[j+1]:=t[j];
t[pos]:=x;
end;
end;
procedure afficher(t:vect;n:integer);
var
i:integer;
begin
for i:=1 to n do
write(t[i]:5);
end;
begin
saisir(n);
remplir(t,n);
trier(t,n);
afficher(t,n);
writeln;
writeln('{By Wael Boumaiza _ Boumaiza_S@t}');
end. |
Partager