Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2012, 16:29   #1
Tattoquardas
Пользователь
 
Регистрация: 15.10.2011
Сообщений: 16
Печаль Сортировка выбором

отсортировать выбором список по убыванию.

пытались сортировать по аналогии с масивами, но видимо совсем не то...


Код:
uses crt;
const k=4;
type
  chain=^list;
  list=record;
    num,ind:integer;
    next:chain;
  end;
  
procedure sort(list:chain);
var
    i,j,n,k,m:Integer;
    tmp,jlist,ilist,mlist:chain;
begin
     j:=1;
     m:=j;
     k:=4;
     repeat
           if list^.ind=j then tmp:=list;
           for i:=j to k do
           begin
                if list^.ind=i then ilist:=list;
                if ilist^.num<tmp^.num then
                begin
                     m:=ilist^.ind;
                     tmp:=ilist;
                end;
                if list^.ind=m then mlist:=list;
                if list^.ind=j then jlist:=list;
                mlist:=jlist;
                jlist:=tmp;
                j:=j+1;
            end;
     until j=k;
end;

var head,iter,tmp:chain;
    j,i,n:integer;
begin
  head:=nil;
  j:=1;
  for i:=1 to k do
    begin
      readln(n);
      if head=nil then
        begin

         new(head);
         iter:=head;
         head^.num:=n;
         head^.ind:=j;
         head^.next:=nil;
         end
        else
          begin
            inc(j);
            new(tmp);
            tmp^.num:=n;
            tmp^.ind:=j;
            tmp^.next:=nil;
            iter^.next:=tmp;
            iter:=iter^.next;
            tmp:=nil;
          end;
      end;
  iter:=head;
  sort(iter);
  while iter<>nil do
  begin
    writeln(iter^.num);
    iter:=iter^.next;
  end;
  end.

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 18.03.2012 в 19:24.
Tattoquardas вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка массива(выбором) Nrgstif Помощь студентам 2 13.01.2012 15:57
Сортировка выбором С++ Belka.ru Помощь студентам 3 12.12.2011 05:57
Сортировка выбором Novi4ok_11 Помощь студентам 2 20.01.2011 14:06
Сортировка выбором.. AronakSS Паскаль, Turbo Pascal, PascalABC.NET 1 09.10.2010 13:27
Сортировка выбором curly182 Общие вопросы C/C++ 3 24.05.2009 13:45