Форум программистов, компьютерный форум CyberForum.ru

Функция сортировки - C++

Восстановить пароль Регистрация
 
cflood
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 37
02.07.2013, 12:53     Функция сортировки #1
День добрый, пишу сортировку чисел, столкнулся с проблемой, комментирую в коде:

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
50
51
52
53
54
#include <iostream>
 
using namespace std;
 
void sorting (int mass[], int out[], int size, int arg)
{
    cout << "Please enter sorting mode:\n1 - Min To Max\n2 - Max To Min\n";
    cin >> arg;
    if (arg == 1)
    {
        cout << "Min To Max sorting...\n";
        int count = 0;
        int back_count = size-1;
        for (int i = 0; i < size; i++)
        {
            for (int j = 0; j < size; j++)
            {
                if (mass[i] < mass[j])
                {
                    count++;
                }
            
            }
 
            if (count == size-1) //size-1 = 9, мы получаем 0, size-2 = 8, мы получаем 1 и т.д.
            {
                //back_count--; // если раскоментирую это и буду выше использовать не size-1, а back_count, то ничего не работает, почему?
                cout << mass[i] << "\n";
            }
 
            count = 0;
 
        }
 
    }
    
    if (arg == 2) {
        cout << "Max To Min sorting...\n";
    }
 
}
 
int main()
{
    int mass[] = {1,2,3,4,5,6,7,8,9,0};
    int size = sizeof(mass)/sizeof(mass[0]);
    int * out = new int[size]();
 
    sorting(mass, out, size, 1);
 
    cout << "\n";
    
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2013, 12:53     Функция сортировки
Посмотрите здесь:

C++ Функция сортировки и поиска
C++ Функция сортировки матрицы
Функция сортировки C++
C++ Функция сортировки
C++ не работает функция сортировки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Stereotip
 Аватар для Stereotip
2 / 2 / 0
Регистрация: 17.04.2012
Сообщений: 22
02.07.2013, 13:23     Функция сортировки #2
А что это??)) вот сайт посмотрите http://cybern.ru/category/algorithms/cpp)) там должен быть интересующий вас материал)
cflood
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 37
02.07.2013, 13:25  [ТС]     Функция сортировки #3
Stereotip, благодарю конечно, но я хочу понять что не так в конкретно моём коде
Stereotip
 Аватар для Stereotip
2 / 2 / 0
Регистрация: 17.04.2012
Сообщений: 22
02.07.2013, 14:34     Функция сортировки #4
вот посмотри)
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
50
51
#include <iostream>
 
int sort_vstavkatomax(int *a,int b)
{
        std::cout << "From min to max" << std::endl;
        for (int i = 0; i < b; i++)
        {
        int temp = a[i];
        int j = i - 1;
        while (j >= 0 && a[j] > temp)
        {
            a[j + 1] = a[j];
            j--;
        }
        a[j + 1] = temp;
    }
    return *a;
}
 
int sort_vstavkatomin(int *a,int b)
{
        std::cout << "From max to min" << std::endl;
        for (int i = 0; i < b; i++)
        {
        int temp = a[i];
        int j = i - 1;
        while (j >= 0 && a[j] < temp)
        {
            a[j + 1] = a[j];
            j--;
        }
        a[j + 1] = temp;
    }
    return *a;
}
int main()
{
    int size;
    std::cin >> size;
    int *a = new int [size];
    for (int i = 0; i < size; i++)
    {
        std::cin >> a[i];
    }
    sort_vstavkatomax(a,size);
    for (int i = 0; i < size; i++)
    {
        std::cout << a[i] << ' ';
    }
    return 0;
}
cflood
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 37
02.07.2013, 14:37  [ТС]     Функция сортировки #5


Почему back_count--; не работает? В логике ошибка где?
Stereotip
 Аватар для Stereotip
2 / 2 / 0
Регистрация: 17.04.2012
Сообщений: 22
02.07.2013, 14:40     Функция сортировки #6
Если бы ты его использовал тогда бы оно работало, а так оно просто определено и все))
cflood
0 / 0 / 0
Регистрация: 24.06.2013
Сообщений: 37
02.07.2013, 14:41  [ТС]     Функция сортировки #7
я же написал

Цитата Сообщение от cflood Посмотреть сообщение
//back_count--; // если раскоментирую это и буду выше использовать не size-1, а back_count, то ничего не работает, почему?
В примере используется не back_count а size-1 для демонстрации.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.07.2013, 14:42     Функция сортировки
Еще ссылки по теме:

Функция сортировки массива в структуре C++
Функция сортировки массива C++
C++ Функция сортировки массива

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

Или воспользуйтесь поиском по форуму:
Stereotip
 Аватар для Stereotip
2 / 2 / 0
Регистрация: 17.04.2012
Сообщений: 22
02.07.2013, 14:42     Функция сортировки #8
А зачем это переменная тебе нужна и что она делает?? ты понимаешь??
Yandex
Объявления
02.07.2013, 14:42     Функция сортировки
Ответ Создать тему
Опции темы

Текущее время: 11:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru