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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2014, 16:03   #1
trinity19
Новичок
Джуниор
 
Регистрация: 08.01.2014
Сообщений: 2
По умолчанию Проблема с сортировкой (Delphi 7)

Задача состоит в том, что:
ан целочисленный массив {aj} j=1,...,n (n<41). Записать в массив {bj} j=1,...,m (m<41) положительные элементы массива {aj}, а в массив {xj} j=1,...,l(l<41) - отрицательные элементы {aj}. После упорядочить полученные массивы по не убыванию.
Проблема состоит в сортировке полученных массивов по не убыванию. Помогите, пожалуйста.

Вот мой код получения массивов:
Код:
program lab8_12;

{$APPTYPE CONSOLE}

uses
  SysUtils, Math;
const
  ct=41;

Type
  aj=array[1..ct] of Integer;
  bj=array[1..ct] of Integer;
  xj=array[1..ct] of Integer;
var

  i,j,k:Integer;
  a:aj;
  b:bj;
  x:xj;
  l:integer;

begin
  reset(input, 'input.txt');
  rewrite(output, 'output.txt');
  Writeln('Дано: ');
  for i:=1 to ct do begin
    read(a[i]);
     writeln('a[',i,']=',a[i],' ');
end;

Writeln('-----------------');
Writeln('Положительные элементы в массиве Bj');
for i:=1 to ct do
  if a[i] >= 0 then
    begin
      j := j+1;
      b[j] := a[i];
      writeln('b[',j,']=',b[j],' ');
    end;
writeln('-----------------');
Writeln('Отрицательные элементы в массиве Xj');

for i:=1 to ct do
  if a[i] < 0 then
    begin
      k := k+1;
      x[k] := a[i];
      writeln('x[',k,']=',x[k],' ');
    end;
end.

Последний раз редактировалось trinity19; 08.01.2014 в 16:11.
trinity19 вне форума Ответить с цитированием
Старый 08.01.2014, 16:36   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Самый простой способ
Код:
for i:=1 to n-1 do
  for j:=i+1 to n do
    if m[j]<m[i] then begin c:=m[i]; m[i]:=m[j]; m[j]:=c; end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с сортировкой. Артём_2 Общие вопросы Delphi 8 21.09.2013 11:01
Проблема с сортировкой Alex_12Proxy Помощь студентам 1 30.03.2012 12:41
ПРОБЛЕМА С СОРТИРОВКОЙ S@n4eeeeez Помощь студентам 4 19.01.2012 21:28
Проблема с сортировкой matbe14 Помощь студентам 0 29.09.2011 11:16
Проблема с сортировкой Anubys Помощь студентам 0 19.04.2011 17:10