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

Контейнер multimap. Обратный вывод - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализация меню http://www.cyberforum.ru/cpp-beginners/thread1057694.html
сейчас для переключения по пунктам меню надо вводить номер пункта меню, а надо чтоб курсором переключалось! вот код с обычным меню: do { cout<<rus("\t Меню: *")<<endl; cout<<rus("\t 1.Просмотр списка товаров")<<endl; cout<<rus("\t 2.Добавление товара в конец списка")<<endl; cout<<rus("\t 3.Добавление товара в произв.место списка")<<endl; cout<<rus("\t 4.Сохранение товаров в файл...
C++ Ввод Как переделать данную программу чтобы размер матрицы вводил пользователь.....второй день мучаюсь не могу сделать....помогите... #include <iostream> #include <iomanip> using namespace std; int main() { const int colum = 10; // количество столбцов массива const int row = 10; // количество строк массива int array; http://www.cyberforum.ru/cpp-beginners/thread1057676.html
C++ Сортировка(я не знаю как сделать)
Имеется одномерный массив длинной N=40. Отсортировать по уменьшению методом бинарного сортирования те элементы массива, которые являются парными числами.
Программа добавления нового комплексного числа в начало массива структур с объединениями(С++) C++
#include <iostream.h> union coord { int i; float f; }; struct point { union coord x;
C++ Бинарный поиск в бинарном файле http://www.cyberforum.ru/cpp-beginners/thread1057557.html
Здравствуйте, помогите решить проблему. Написал программу для нахождения числа бинарным поиском и перебором в бинарном файле. Программа, вроде, работает. То есть выводит в конце то, что надо, но когда пытаюсь открыть созданный бинарный файл через TextEdit (ОС MacOS 10.9) выдает то, что на скриншоте. #include <iostream> #include <locale> #include <fstream> using namespace std; ofstream...
C++ Считать русские и английские символы с консоли Собственно как? Нужно читать путь до каталога, который может содержать русские и английские символы. Повсеместно использую wchar_t, читаю строчку так: wchar_t str; fgetws(str, 1024, stdin); name.assign(str); name - wstring, однако по прежнему не читаются русские символы.. Как быть? (приходится использовать str потому, что могут быть пробелы) В настройках проекта стоит unicode. Добавлено... подробнее

Показать сообщение отдельно
outoftime
║XLR8║
 Аватар для outoftime
505 / 427 / 33
Регистрация: 25.07.2009
Сообщений: 2,297
26.12.2013, 18:13     Контейнер multimap. Обратный вывод
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
#include <iostream>
#include <iterator>
#include <algorithm>
#include <functional>
#include <string>
#include <set>
#include <boost/lexical_cast.hpp>
 
struct Student
{
    std::string name;
    std::array<int, 3> marks;
    friend bool operator < (const Student &s1, const Student &s2);
    friend std::ostream& operator << (std::ostream &os, const Student &s);
    friend std::istream& operator >> (std::istream &is, Student &s);
};
 
int main()
{
    std::multiset<Student> m;
    
    typedef std::istream_iterator<Student> in;
    std::copy(in(std::cin), in(), std::inserter(m, m.begin()));
    std::copy(m.begin(), m.end(), std::ostream_iterator<Student>(std::cout, "\n"));
    
    return EXIT_SUCCESS;
}
 
bool operator < (const Student &s1, const Student &s2) {
    return std::accumulate(s1.marks.begin(), s1.marks.end(), 0) <
           std::accumulate(s2.marks.begin(), s2.marks.end(), 0);
}
 
std::ostream& operator << (std::ostream &os, const Student &s) {
    os << s.name << " ";
    for (const int &value : s.marks)
        os << value << " ";
    return os;
}
 
std::istream& operator >> (std::istream &is, Student &s) {
    is >> s.name;
    for (auto it = s.marks.begin(); it != s.marks.end(); ++it)
        is >> *it;
    return is;
}
Добавлено через 55 секунд
Для чтения с файла передаете переменную файла вместо std::cout и все дела

Добавлено через 26 минут
Цитата Сообщение от outoftime Посмотреть сообщение
#include <boost/lexical_cast.hpp>
Забыл удалить...
 
Текущее время: 21:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru