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

Упорядочить вектор так, что бы сначала шли числа кратные 3, потом с остатком 2 при делении на 3, потом с остатком 1. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Взаимный обмен значений указателей в параметрах функции http://www.cyberforum.ru/cpp-beginners/thread1092851.html
Необходимо создать шаблонную функцию void f(int *x, float *y) в которой *х - указатель на массив, состоящий из целых чисел, *у - указатель на массив, состоящий из чисел типа float Я хотел поэлементно обменять массивы Вот что получилось template <class typename A, class typename B> void f(A *x, B *y)
C++ Необходимо отсортировать слова в строке по алфавиту Написать программу в которой вводиться рядок слов, отсортировать слова по первой букве, нужно сделать через использование функций. http://www.cyberforum.ru/cpp-beginners/thread1092848.html
Вычислить разность между максимальным и минимальным элементами массива C++
Ввести массив. Вычислить разность между максимальным и минимальным элементами. Только начал изучать с++. Объясните, пожалуйста, как это делать.
Рамка из символов,С++,циклы, C++
Как сделать рамку из символов ? на подобии этой задачки... Вводим символ и кол-во , получаем фигуру (квадрат , прямоугольник) : #include <iostream.h> void main () { int i,j,k; char ch; cout<<"westi simvol"<<endl;
C++ Перемножение матриц с использованием динамических массивов http://www.cyberforum.ru/cpp-beginners/thread1092836.html
Всем здравствуйте) Программа не считает матрицу С (С=A*B). В чём дело не понимаю. #include <iostream> #include <conio.h> using namespace std; void Gen(int **A, int **B, int n, int m, int k); void Vivod(int **A, int **B, int n, int m, int k); void Multi(int **A, int **B,double **C, int n, int m, int k);
C++ Блок-схема алгоритма Можете показать как будет выглядеть блок-схема для данного алгоритма. подробнее

Показать сообщение отдельно
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
09.02.2014, 20:55     Упорядочить вектор так, что бы сначала шли числа кратные 3, потом с остатком 2 при делении на 3, потом с остатком 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
#include <algorithm>
#include <iostream>
 
class Div
{
public:
    Div(int divider, int modulo):
        divider_(divider),
        modulo_(modulo)
    { }
 
 
    bool operator()(int value) const
    {
        return (value % divider_) == modulo_;
    }
private:
    int divider_;
    int modulo_;
};
 
 
int main()
{
    std::vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8, 9};
 
    auto end = std::partition(v.begin(), v.end(), Div(3, 0));
    end = std::partition(end, v.end(), Div(3, 2));
    end = std::partition(end, v.end(), Div(3, 1));
 
    for (const auto& item: v)
    {
        std::cout << item << " ";
    }
    std::cout << std::endl;
}
 
Текущее время: 09:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru