Posted by : aymen Saturday, 18 January 2014

program ex;                                                                                    

uses wincrt;
type tab=array [1..10] of integer;
var
t:tab;
 i,n,j,p,aux:integer;

procedure shell (var t:tab ; n,p:integer);
var i,j,aux:integer;
begin


if p>1 then
begin
p:= p div 3 ;
for i:=p+1 to n do
begin
aux := t[i];
j:=i;
while (j>p) and (t[j-p] > aux ) do
begin
t[j]:=t[j-p];
j:=j-p;
end;
t[j]:= aux;
end;
shell(t,n,p)
end;
end;
procedure affich (t:tab ; n:integer);
var i:integer;
begin
for i:=1 to n do
begin
writeln('t[',i,']  ',t[i]);
end;
end;



procedure rem (var t:tab ; var n:integer )  ;
var i:integer ;
begin
write ('n'); read(n);
for i:=1 to n do
begin
write('t[',i,']');read(t[i]);
end;
end;


begin
rem(t,n);
p:=1;
while p<n do
begin
p:=p*3+1;
end;
shell(t,n,p);
affich(t,n);

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 -