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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2010, 16:20   #1
Babur4iK
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 55
По умолчанию Отсортировать массив по четным элементам ,методом пузырька!

Код:
uses crt;
 
const n=10;
 
var
x:array [1..n] of integer;
k,j,buf,c,c1:integer;
 
begin
clrscr;
   writeln('DO: ');
   randomize;
   for k:= 1 to n do
 begin

 readln(x[k]);
end;
 
begin
  for k:= n-1 downto 1  do
    for j:= 1 to k  do
    begin
    if not odd(x[k])and not odd(x[j]) and (x[j]>x[j+1]) then
  begin
      buf:=x[j];
      x[j]:=x[j+1];
      x[j+1]:=buf;
  end; end;
 
  writeln;
    writeln('Posle: ');
      for k:= 1 to n do
         write(x[k]:3);
      end;
    readkey;
  end.

Проблема:сортирует не так, как надо: еслли ввсети 10 9 8 7 6 5 4 3 2 1,то отсортирует 9 7 5 3 1 2 4 6 8 10,а надо чтоб сортировал 2 9 4 7 6 5 8 3 2 1

помогите пожалуйста

Последний раз редактировалось Stilet; 19.05.2010 в 16:33.
Babur4iK вне форума Ответить с цитированием
Старый 19.05.2010, 16:37   #2
Ol'ga_new
Форумчанин
 
Регистрация: 12.05.2010
Сообщений: 125
По умолчанию

Четные по возрастанию нечетные по убыванию?
Ol'ga_new вне форума Ответить с цитированием
Старый 19.05.2010, 16:39   #3
Babur4iK
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 55
По умолчанию

нет надо чтоб нечетные оставались на своем месте,вот так например:

2 9 4 7 6 5 8 3 2 1
Babur4iK вне форума Ответить с цитированием
Старый 19.05.2010, 16:47   #4
Ol'ga_new
Форумчанин
 
Регистрация: 12.05.2010
Сообщений: 125
По умолчанию

А если изначально ввести 4 7 6 2 3 9 7 1 8 5, то результат какой?
Ol'ga_new вне форума Ответить с цитированием
Старый 19.05.2010, 16:49   #5
Babur4iK
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 55
По умолчанию

4 7 2 3 6 9 7 1 5 8

Последний раз редактировалось Babur4iK; 19.05.2010 в 16:55.
Babur4iK вне форума Ответить с цитированием
Старый 19.05.2010, 19:26   #6
Stranger333
Пользователь
 
Аватар для Stranger333
 
Регистрация: 19.05.2009
Сообщений: 98
По умолчанию

Код:
А если изначально ввести 4 7 6 2 3 9 7 1 8 5, то результат какой?
Код:
4 7 2 3 6 9 7 1 5 8
может вы имели ввиду 2 7 4 3 6 9 8 7 1 5?
Stranger333 вне форума Ответить с цитированием
Старый 19.05.2010, 19:34   #7
Babur4iK
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 55
По умолчанию

нет,именно так)
Babur4iK вне форума Ответить с цитированием
Старый 19.05.2010, 20:03   #8
Stranger333
Пользователь
 
Аватар для Stranger333
 
Регистрация: 19.05.2009
Сообщений: 98
По умолчанию

тогда я не понимаю что вы здесь отсортируете???
4 7 2 3 6 9 7 1 5 8 - здесь непонятная сортировка, ни по чентным ни по не четным не будет сортировки. Напишите пару примеров что вам нужно сделать!
Stranger333 вне форума Ответить с цитированием
Старый 19.05.2010, 22:59   #9
Babur4iK
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 55
По умолчанию

вводим 10 9 8 7 6 5 4 3 2 1 , результат 2 9 4 7 6 5 8 3 10 1


надо чтоб ,нечетные элементы оставались на месте,сортироваться должны только четные элементы
Babur4iK вне форума Ответить с цитированием
Старый 20.05.2010, 00:20   #10
Stranger333
Пользователь
 
Аватар для Stranger333
 
Регистрация: 19.05.2009
Сообщений: 98
По умолчанию

ну можна сделать что бы четные элементы занеслись в другой массив и там сделать сортировку, потом добавлять в загальной массив четное и не четное число.
Stranger333 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
курсач по С++ на тему сортировок методом пузырька и челночным методом ffocus Фриланс 13 05.01.2010 20:20
Сортировка методом пузырька fygas1991 Общие вопросы C/C++ 5 15.11.2009 21:39
Помогите отсортировать массив методом бинарных вставок zhorzh2407 Помощь студентам 1 19.11.2008 17:19
сортировка методом двухпроходного пузырька. Net* Общие вопросы C/C++ 3 26.05.2008 07:17