Posted by : aymen Thursday, 16 January 2014


program tri_fus;
uses wincrt;
type tab=array[1..20]of integer;


var m,n,nb,i:integer;t:tab;

procedure saisie(var x:integer);
begin
repeat
writeln('Donner le nombre d''éléments du tableau : ');
readln(x);
until(x in[1..10]);
end;

procedure remplir (x:integer;var v:tab);
var i:integer;
begin
for i:=1 to x do
begin
writeln('Donnerl''élément numéro ',i);
readln(v[i]);
end;
end;


procedure fusion(var v:tab;g,m,d:integer);
var i,j,k,c:integer;s:tab;
begin
for i:=g to d do
s[i]:=v[i];

i:=g;j:=g;k:=m+1;
while(j<=m)and(k<=d)do
begin
if(s[j]<=s[k])then
begin
v[i]:=s[j];
j:=j+1;
end
else
begin
v[i]:=s[k];
k:=k+1;
end;
i:=i+1;
end;

for c:=j to m do
begin
v[i]:=s[c];
i:=i+1;
end;

for c:=k to d do
begin
v[i]:=s[c];
i:=i+1;
end;
end;

Procedure Tri_Fusion (Var t : TAB; g, d : integer);
Var
m : integer;
s : TAB;
Begin
If g < d Then
Begin
m := (g + d) Div 2;
Tri_Fusion (t, g, m);
Tri_Fusion (t, m + 1, d);
fusion(t,g,m,d);
End;
End;

procedure affiche(x:integer;v:tab);
var i:integer;
begin
for i:=1 to x do
write(v[i]:4);
end;

begin
saisie(nb);
remplir(nb,t);
tri_fusion(t,1,nb);
affiche(nb,t);
end.

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Welcome to My Blog
Blogger Tips and TricksLatest Tips For BloggersBlogger Tricks
Blogger Tricks

Popular Post

Blogger templates

إتصل بنا

Aymen Jaballi : 27380474
Sofiane Ben Khemis : 23656535

Labels

Notice: Undefined variable: code_pub_serv in /home/webestools/www/page/gen_iphost.php on line 20

Blogger news

Powered by Blogger.

Wikipedia

Search results

Translate

من أنا

Featured Posts

- Copyright © BAC INFO DJERBA --- - Designed by sofiane ben khemis and aymen jaballi -