• Предмет: Информатика
  • Автор: OksanaOksi1
  • Вопрос задан 11 месяцев назад

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

Ответы

Ответ дал: ProgrammerV1
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
 begin
  if arr[i-1] <= arr[i] then
   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.
Вас заинтересует