Информатика Гномья сортировка Сделайте пожалуйста Даю 30 баллов

0 голосов
55 просмотров

Информатика
Гномья сортировка
Сделайте пожалуйста
Даю 30 баллов


Информатика (14 баллов) | 55 просмотров
Дан 1 ответ
0 голосов

Uses crt;
type mas=array[1..1000] of integer;
var a:mas;   
n,i:integer;
procedure gnomesort(var arr:mas; size : Integer);
var i, j, t  : Integer;
begin
i := 2;
j := 3;
while i <= size do <br>begin 
if arr[i-1] <= arr[i] then   <br>begin   
i := j;   
j := j + 1   
end 
else   
begin   
t := arr[i-1];   
arr[i-1] := arr[i];   
arr[i] := t;   
i := i - 1; 
if i = 1 then   
begin   
i := j;   
j := j + 1   
end 
end 
end;
end; 
begin 
write('Размер массива n='); 
read(n); 
writeln('Исходный массив:'); 
for i:=1 to n do 
read(a[i]); 
writeln; 
gnomesort(a,n); 
writeln('Результат сортировки:'); 
for i:=1 to n do 
write(a[i],' ');
end.

(840 баллов)