Аомине

Пользователь

Регистрация: 17.12.2018

Сообщения: 1051

Рейтинг: 633

Аомине

Регистрация: 17.12.2018

Сообщения: 1051

Рейтинг: 633

эх ну где же вы топ прогеры мира

Lambda-chan

Пользователь

Регистрация: 26.07.2012

Сообщения: 4615

Рейтинг: 8642

Lambda-chan

Регистрация: 26.07.2012

Сообщения: 4615

Рейтинг: 8642

[ i ] используется для форумного форматирования, поэтому код сюда нормально не вставится. Используй pastebin

Аомине сказал(а):

void BubbleSort(aero arr[10],int n)

{

   for (int i = 0; i < n - 1; i++)

   {

      bool done=true;

      for (int j = 0; j < n - 1; j++)

Нажмите, чтобы раскрыть...

Не знаю, в этом ли проблема, но при сортировке пузырьком внутренний цикл должен быть от нуля до n - i - 1

Аомине

Пользователь

Регистрация: 17.12.2018

Сообщения: 1051

Рейтинг: 633

Аомине

Регистрация: 17.12.2018

Сообщения: 1051

Рейтинг: 633

Moon-chan сказал(а):

[ i ] используется для форумного форматирования, поэтому код сюда нормально не вставится. Используй pastebin

Не знаю, в этом ли проблема, но при сортировке пузырьком внутренний цикл должен быть от нуля до n - i - 1

Нажмите, чтобы раскрыть...

У меня пузырек заменяет только время второго, а дальше копипастой вставляет предыдущую вторую. Пробовал n - i - 1, не работает

 

Что сейчас у меня

До

Номер    Тип      Время     Назначения 

1            322       24             SF

2            228       12             LA

После

1            322       12             SF

1            322       24             SF

 

А надо

До

Номер    Тип      Время     Назначения 

1            322       24             SF

2            228       12             LA

После

2            228       12             LA

1            322       24             SF

Lambda-chan

Пользователь

Регистрация: 26.07.2012

Сообщения: 4615

Рейтинг: 8642

Lambda-chan

Регистрация: 26.07.2012

Сообщения: 4615

Рейтинг: 8642

Попробуй эту строчку

Аомине сказал(а):

arr[j].vremya = arr[j + 1].vremya;

Нажмите, чтобы раскрыть...

заменить на

arr[j] = arr[j + 1];

Twilights

Пользователь

Регистрация: 14.04.2017

Сообщения: 37

Рейтинг: 5

Twilights

Регистрация: 14.04.2017

Сообщения: 37

Рейтинг: 5

Нет под рукой Визуалки и проверить мои догадки в два часа ночи я проверить на деле не могу но.

В этом куске кода, создаёшь временный объект, в который закидываешь "Инфу о рейсе с индексом "

Цитата:

 aero tmp = arr[j];

               arr[j].vremya = arr[j + 1].vremya;

               arr[j + 1] = tmp;

               done = false;

Нажмите, чтобы раскрыть...

Здесь же и как я понял и есть твоя "Проблема", именно в этом куске кода, ты обмениваешь значения времени, но не меняешь остальную инфу

Цитата:

arr[j].vremya = arr[j + 1].vremya;

               arr[j + 1] = tmp;

Нажмите, чтобы раскрыть...

 

Как пример, возможный кусок кода 

Цитата:

 aero tmp = arr[j];

               arr[j] = arr[j + 1]

               arr[j + 1] = tmp; //надо проверять сработает ли это в С++

              done = false; //ЗАЧЕМ это в коде - не разбирал

Нажмите, чтобы раскрыть...

Аомине

Пользователь

Регистрация: 17.12.2018

Сообщения: 1051

Рейтинг: 633

Аомине

Регистрация: 17.12.2018

Сообщения: 1051

Рейтинг: 633

Twilights сказал(а):

Нет под рукой Визуалки и проверить мои догадки в два часа ночи я проверить на деле не могу но.

В этом куске кода, создаёшь временный объект, в который закидываешь "Инфу о рейсе с индексом "

Здесь же и как я понял и есть твоя "Проблема", именно в этом куске кода, ты обмениваешь значения времени, но не меняешь остальную инфу

 

Как пример, возможный кусок кода 

Нажмите, чтобы раскрыть...

Я уже разобрался, нужно лишь было весь массив заменить, а я ток время заменял. Невнимательный. Кста тот выход из цикла я скоро переделаю, просто набросок

Lambda-chan

Пользователь

Регистрация: 26.07.2012

Сообщения: 4615

Рейтинг: 8642

Lambda-chan

Регистрация: 26.07.2012

Сообщения: 4615

Рейтинг: 8642

Аомине сказал(а):

блин это так логично выглядит, туплю. Заработало...Спасибо огромное,видимо мне стоит передохнуть. Можно клозать тему. Мунчан ванлав PepeLove.pngPepeLove.pngPepeLove.pngPepeLove.png

Нажмите, чтобы раскрыть...

Закрываю 

Тема закрыта