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

Вопрос по TMemo и сортировке вектора списков. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ "Теория вероятности Шейтона" и "Кодирование/дикодирование информации" (C++) http://www.cyberforum.ru/cpp-beginners/thread346977.html
Всем здравструйте! :) Есть две задачки: "Теория вероятности Шейтона" и "Кодирование/декодирование информации". Код первой: Задание первой: 1. Составить программу на языке C/С++ наличия букв русского алфавита в тексте, записанном в файл. 2. Определить энтропию этого текста. 3. Построить гистограмму распределения букв. КОД #include<iostream.h> #include<conio.h>
C++ fstream помогите, пожалуйста, чет я совсем запуталась((( /*Дан текстовый фал, содержащий целые числа, разделенные пробелами. Определить является ли последовательность чисел, находящихся в файле, упорядоченной. В новый файл вывести сообщение о том, являются ли последовательность чисел в данном файле упорядоченной по убыванию или по возрастанию либо не упорядоченной, а также - среднее... http://www.cyberforum.ru/cpp-beginners/thread346972.html
C++ Редактирование dll
Здравствуйте. Если честно не знаю в какой раздел обратиться. Решил к вам. Для одной из программ (ГИС Панорама) можно устанавливать дополнительные приложения, запускаемые внутренними средствами этой программы. Сама эта мини-программа представляет собой один dll файл. Необходимо его открыть и изменить немного графический вид (сделать шрифт покрупнее). Сам я немного занимался написанием...
ошибки компиляции C++
недавно создавал тему но никто не помог(поиск юзал не помогло) когда я компилирую пример из boost (самый первый) вот такие ошибки E:\boost_1_47_0/boost/system/error_code.hpp:214: undefined reference to `boost::system::generic_category()' E:\boost_1_47_0/boost/system/error_code.hpp:215: undefined reference to `boost::system::generic_category()' E:\boost_1_47_0/boost/system/error_code.hpp:216:...
C++ Множественное наследование http://www.cyberforum.ru/cpp-beginners/thread346897.html
В спортивных соревнованиях различных видов спорта приняли участие люди из разных стран. Название страны имеют следующую структуру country = {имя, телефонный код, почтовый индекс}. Каждый участник соревнования весит ves = {килограмм, грамм} и может участвовать только в одной из предлагаемых спортивных мероприятий. Определить лучшие спортивные результаты, полученные в различных спортивных...
C++ распределенные системы Здравствуйте, не знала в каком разделе задать эту тему. Вопросы не относятся к языку С++. Это общие вопросы по поводу распределенной системы. Помогите кто как сможет: 1) Мультипроцессор – это распределенная система? 2) Мильтиядерный процессор – это распределенная система? 3) Кластер – это распределенная система? 4) Компьютер с копроцессором, у которого своя не совместно... подробнее

Показать сообщение отдельно
Red Planet
 Аватар для Red Planet
49 / 10 / 2
Регистрация: 20.09.2009
Сообщений: 263
25.09.2011, 17:24  [ТС]     Вопрос по TMemo и сортировке вектора списков.
Решение найдено.
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
class SortByAny {
    int elemNumber;
    public: SortByAny(int);
            int getElemNumber() const { return elemNumber; }
            bool operator()(const list<int> &, const list<int> &);
};
 
bool hasEmpty(const vector< list<int> > &);
int listMinSize(const vector< list<int> > &);
 
// ---------------------------------------------------------------------------
int _tmain (int argc, _TCHAR* argv[]) {
    system ("title Temp");
 
    SortByAny s(6);
    vector< list<int> > v(4, list<int>());
    v[0].push_back(12);
    v[0].push_back(79);
    v[0].push_back(5);
    v[1].push_back(7);
    v[1].push_back(2);
    v[1].push_back(25);
    v[2].push_back(3);
    v[2].push_back(5);
    v[2].push_back(1);
    v[3].push_back(2);
    v[3].push_back(3);
    v[3].push_back(5);
    v[3].push_back(1);
    v[3].push_back(2);
 
    cout <<"Before sort." << endl;
    for (int i = 0; i < v.size(); i++) {
        for (list<int>::iterator it = v[i].begin(); it != v[i].end(); ++it)
            cout << *it << "\t";
        cout << endl;
    }
 
    if (s.getElemNumber() > listMinSize(v))
        s = SortByAny(listMinSize(v)-1);
 
    if (!hasEmpty(v)) {
        cout << endl << "Min. list size: " << listMinSize(v) << endl
        << "Coloumn sort by: " << s.getElemNumber() << endl
        << "After sort." << endl;
        sort(v.begin(), v.end(), s);
        for (int i = 0; i < v.size(); i++) {
            for (list<int>::iterator it = v[i].begin(); it != v[i].end(); ++it)
                cout << *it << "\t";
            cout << endl;
        } // for.
    } // if.
    else
        cout << "Error! There are empty lists in vector. Fill them. " << endl;
 
    system ("pause");
    return 0;
}
 
// ---------------------------------------------------------------------------
 
SortByAny::SortByAny(int newNumber) {
    if (newNumber >= 0)
        elemNumber = newNumber;
    else
        elemNumber = -newNumber;
}
 
bool SortByAny::operator ()(const list<int> &left, const list<int> &right) {
    list<int>::const_iterator lit = left.begin();
    list<int>::const_iterator rit = right.begin();
    if (left.size() == 0) return true;
    if (right.size() == 0) return false;
    for (int i = 0; i < elemNumber; i++) {
        lit++;
        rit++;
    }
    return *lit < *rit;
}
 
int listMinSize(const vector< list<int> > &vl) {
    int minSize = vl[0].size();
    for (int i = 1; i < vl.size(); i++)
        if (vl[i].size() < minSize)
            minSize = vl[i].size();
 
    return minSize;
}
 
bool hasEmpty(const vector< list<int> > &vl) {
    for (int i = 0; i < vl.size(); i++)
        if (vl[i].empty())
            return true;
    return false;
}
 
Текущее время: 22:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru