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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2012, 18:08   #1
sev48fire
 
Регистрация: 05.06.2012
Сообщений: 9
По умолчанию все отрицательные элементы массива перенести в его начало, а все остальные в конец

Дан массив x(n) все отрицательные элементы массива перенести в его начало, а все остальные в конец, сохраняя исходное взаимное расположение как среди отрицательных, так и среды остальных элементов. Для Pascal abc.

Последний раз редактировалось sev48fire; 05.06.2012 в 20:31.
sev48fire вне форума Ответить с цитированием
Старый 05.06.2012, 19:31   #2
sev48fire
 
Регистрация: 05.06.2012
Сообщений: 9
По умолчанию

Если уже был такой вопрос просьба дать ссылку.

Последний раз редактировалось sev48fire; 05.06.2012 в 20:22.
sev48fire вне форума Ответить с цитированием
Старый 05.06.2012, 20:29   #3
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Язык какой?
Poma][a вне форума Ответить с цитированием
Старый 05.06.2012, 20:31   #4
sev48fire
 
Регистрация: 05.06.2012
Сообщений: 9
По умолчанию

Pascal abc.
sev48fire вне форума Ответить с цитированием
Старый 05.06.2012, 21:13   #5
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Вроде была похожая задача на acmp, в своё время я её решил, писать заново влом, а acmp что-то не работает, так что ждем...
Poma][a вне форума Ответить с цитированием
Старый 06.06.2012, 11:19   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

да нечего из простейшей задачи делать олимпиадную!!
банально воспользоваться ДОПОЛНИТЕЛЬНЫМ массивом.
вот так:
Код:
const N=10;
type
   TArr = array[1..N] of Integer;
var
   X, Tmp : TArr;
   i, k : integer;
begin
  {заполним массив случайными числами}   
  Randomize;
  for i:=1 to N do X[i] := 10-Random(25);

  {выведем массив на экран}
  Write('Исходный массив: ');
  for i:=1 to N do Write(X[i]:5);
  WriteLn;

  {преобразование}
  k:=0;
  for i:=1 to N do 
    if X[i]<0 then begin
        Inc(K);
        Tmp[k] := X[i]; 
    end;
  for i:=1 to N do 
    if X[i]>=0 then begin
        Inc(K);
        Tmp[k] := X[i]; 
    end;
  X := Tmp;

  
  {выведем массив на экран}
  Write('Полученный массив: ');
  for i:=1 to N do Write(X[i]:5);
  WriteLn; 

  Readln
end.
p.s. если мне не изменяет память, на форуме были и красивые решения подобной задачи (где решение выполняется без доп.массивов и за один проход)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 06.06.2012, 13:00   #7
sev48fire
 
Регистрация: 05.06.2012
Сообщений: 9
По умолчанию

А как можно удалить тему?
sev48fire вне форума Ответить с цитированием
Старый 06.06.2012, 14:02   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
А как можно удалить тему?
попросить кого-нибудь из модераторов. например, меня...

только я хотел бы услышать обоснование - удалить тему, потому что " .????. "

темы на форуме тем и хороши, что задачи часто повторяются. и поиском зачастую можно найти решение своей задачи или увидеть направление, в каком нужно двигаться для решения задачи...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 06.06.2012, 15:11   #9
sev48fire
 
Регистрация: 05.06.2012
Сообщений: 9
По умолчанию

Да можно и оставить конечно, просто ответ на вопрос получен.
sev48fire вне форума Ответить с цитированием
Старый 06.06.2012, 18:26   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
просто ответ на вопрос получен.
Порадовался сам - дай другим вкусить.
Тему оставить!!!! В аннал истории!
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Турбо ассемблер - построить массив путём сдвига исходного массива и умножить все элементы полученного массива на два Александр16 Помощь студентам 5 12.02.2012 20:30
Турбо ассемблер - построить массив путём сдвига исходного массива и умножить все элементы полученного массива на два Александр16 Помощь студентам 1 12.02.2012 19:56
Создать матрицу A[1..N,1..N] из целых чисел. Сформировать одномерный массив, элементы которого - максимал spezzA Помощь студентам 2 24.11.2010 19:29
Все отрицательные элементы массива А заменить на сумму, а положительные на полусумму предшествующих Lada05 Помощь студентам 1 27.10.2010 15:44
Дан файл, элементами которого являются числа Артём1992 Помощь студентам 3 18.03.2010 12:43