5 / 3 / 2
Регистрация: 25.12.2013
Сообщений: 56
1

Сортировка массива простым включением

17.11.2015, 09:58. Показов 9019. Ответов 2
Метки нет (Все метки)

Есть псевдодинамический массив, надо отсортировать простым включением (Сортировка вставками)
C++
1
2
3
4
5
6
7
8
9
10
    const int ArrayMAX = 100;// Константа размера массива
    int mas[ArrayMAX]; //Иниц массив
    int countel; // количество элементов
    cout << "Введите количество элементов массива" << endl;
    cin >> countel;
    for (int place = 0; place < countel; place++)
    {
        mas[place] = rand() %100; 
        cout << mas[place] << endl;
    }
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.11.2015, 09:58
Ответы с готовыми решениями:

Найти в заданном одномерном массиве количество простых чисел, используя сортировку простым включением
Помогите, пожалуйста, с решением задач. Тяжело даются динамические массивы. Это должна быть одна...

Сортировка включением
блин не сильно розбираюсь на С++ нужна помощь

Сортировка с двойным включением
Помогите написать код для сортировки с двойным включением по возрастанию на C++?

Сортировка двоичным включением
У меня задание продемонстрировать в виде таблицы алгоритм роботы сортировки с двоичным включением...

2
16 / 16 / 10
Регистрация: 19.10.2015
Сообщений: 34
17.11.2015, 10:59 2
Вот
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
#include <windows.h>
 
 
using std::cout;
using std::cin;
using std::endl;
 
int main()
{
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);
 
    const int ArrayMAX = 100;// Константа размера массива
    int mas[ArrayMAX]; //Иниц массив
    int countel; // количество элементов
    cout << "Введите количество элементов массива(меньше 100)" << endl;
    cin >> countel;
    for (int place = 0; place < countel; place++)
    {
        mas[place] = rand() % 100;
        cout << mas[place] << "   ";
    }
    cout << endl;
 
    int key(0);
    int i(0), j(0);
    for ( j = 1; j < countel; j++ )
    {
        key = mas[j];
        i = j - 1;
        while (i >= 0 && mas[i] > key)
        {
            mas[i + 1] = mas[i];
            i--;
        }
        mas[i + 1] = key;
    }
 
    for (int place = 0; place < countel; place++)
    {
        cout << mas[place] << "   ";
    }
    cout << endl;
 
 
    system("PAUSE");
    return 0;
}
0
5 / 3 / 2
Регистрация: 25.12.2013
Сообщений: 56
17.11.2015, 13:01  [ТС] 3
Вот так вот короче стало.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Сортировка методом простого включения 
    for (int i = 1; i < countel; i++)
    {   
        int j = i - 1;
        while( ( j >= 0 ) && ( mas[i] > mas[j] ) )
        {
            j--;
        }
        j++;
 
        int buf = mas[i];
                
        for(int k = i; k > j; k-- )
            mas[ k ] = mas[ k - 1 ];
        mas[j] = buf;
    }
    for (int place = 0; place < countel; place++)
    {
        cout << mas[place] << endl;
    }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.11.2015, 13:01
Помогаю со студенческими работами здесь

Сортировка включением(вставкой)
Здравствуйте, написал массив, но не знаю, как добавить в него сортировку включением(вставкой),...

Сортировка односвязного циклического списка (Прямым включением)
Привет всем:) Мне требуется отсортировать односвязный циклический список, методом: прямое...

Сортировка простым слиянием
Написала прогу, а не сортирует( #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &quot;windows.h&quot;...

Сортировка простым слиянием
Нужно считать числа из двух документов, сделать слияние и сортировку и вывести результат в консоли....


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru