Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
13 / 18 / 6
Регистрация: 02.05.2018
Сообщений: 545

Реализовать сортировку по росту (по убыванию) методом вставок и методом слияния

02.11.2018, 20:32. Показов 2402. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добавлено через 1 час 27 минут
...

Список лист заполняется экземплярами класса:

C++
1
2
3
4
5
6
7
8
9
10
11
void StudentGournalRead(int&Number,list<Student>&Gournal)  // Функция для заполнения данных обо всех учениках через цикл
{
    Student a;
    int i = 0;           // итератор
    while ( i < Number )
    {
         a.Read();        // Заполняем данные об ученике
        Gournal.push_back(a);    // Добавляем в список обьект в котором содержится инф-я об ученике
        i++;
    }
}
Код класса:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class Student
{
 
private:
 
    int gender;         // Пол ученика
    string fio;         // Фамилия ученика
    double mass;       // Масса ученика
    double growth;    // Рост ученика
 
bool init( int Gender, string Fio, double Mass, double Growth )  // Проверка исходных данных
{
    if (   (Mass < 0.0 || Mass == 0.0) || (Growth < 0.0 || Growth == 0.0) || (Gender < 1 || Gender > 2)  )
 
        return false;  // неправильный ввод - не иницилизировать поля
 
    else      // правильный ввод - иницилизировать поля
    {
 
        gender = Gender;
        fio = Fio;
        mass = Mass;
        growth = Growth;
 
        return true;
    }
 
};
Нужно реализовать сортировку по росту (по убыванию) 1)методом вставок, 2) методом слияния.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.11.2018, 20:32
Ответы с готовыми решениями:

Массивы А, В и С упорядочить по убыванию, используя сортировку методом вставок
Ввести массивы А и В. В массив С скопировать те элементы массива А, которые встречаются в массиве В по крайней мере 2 раза, и те элементы...

Реализовать сортировку массива целых чисел методом двухпутевых вставок
Вот такая задача: Реализовать сортировку массива целых чисел методом двухпутевых вставок при использовании следующих дополнительных...

Выполнить сортировку методом естественного слияния
Пусть дан файл вещественных чисел.Выполнить сортировку методом естественного слияния. Окончательный результат сортировки вывести на экран и...

4
44 / 20 / 14
Регистрация: 23.10.2018
Сообщений: 103
02.11.2018, 20:55
C++
1
2
3
4
5
6
7
8
9
10
11
 for (int i = 0; i < (int)my_list.size() - 1; i++) {
        auto it1 = my_list.begin();
        auto it2 = std::next(it1);
        for (int j = 0; j < (int)my_list.size() - 1 - i; j++) {
            if (*it1 > *it2) {
                std::swap(*it1, *it2);
            }
            it1++;
            it2++;
        }
    }
1
13 / 18 / 6
Регистрация: 02.05.2018
Сообщений: 545
02.11.2018, 21:04  [ТС]
sty4ent, у меня в списке хранится экземпляр класса Student(int,string,double,double Growth), и сортировать надо по убыванию роста Growth.
0
44 / 20 / 14
Регистрация: 23.10.2018
Сообщений: 103
02.11.2018, 21:15
Цитата Сообщение от cherc Посмотреть сообщение
у меня в списке хранится экземпляр класса Student(int,string,double,double Growth), и сортировать надо по убыванию роста Growth.
Поздравляю . Сложно переделать под свою задачу?
0
02.11.2018, 21:36

Не по теме:

cherc Где описание класса Student в самом начале?

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.11.2018, 21:36
Помогаю со студенческими работами здесь

Отсортировать массив по алфавиту, используя сортировку методом бинарных вставок
Массив состоит из записей, в которых предусмотрены поля: Ф.И.О., год рождения. Отсортировать этот массив по алфавиту, используя ...

Выполнить сортировку одномерного массива X(100) методом бинарных вставок
Здравствуйте уважаемые пользователи форума, прошу составить программу в с++ просто нужно сдать программу эту через 2 дня

Методом слияния отсортировать элементы по убыванию.
Методом слияния отсортировать элементы по убыванию.

Сортировка массива по убыванию элементов методом вставок
Отсортировать массив по убыванию элементов простыми вставками. Код неправильный, исправьте, если можно с комментарием. #include...

Массивы. Расположить элементы в порядке возрастания. Использовать сортировку методом вставок
Дан массив a. Расположить его элементы в порядке возрастания. Использовать сортировку методом вставок. Количество и значение элементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru