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

Переписать в новый массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти значение наиболее часто встречающееся в целочисленном массиве размера N http://www.cyberforum.ru/cpp-beginners/thread54324.html
Люди добрые ПОМОГИТЕ ПОЖАЛУЙСТА решить задачу - ЗАВТРА СДАВАТЬ !!!! Условие: Задан Целочисленный массив размера N. Найти значение наиболее часто встречающееся в массиве. Вывести на экран все...
C++ Нахождение и подсчет прописных букв Возникла проблема с подсчетом прописных букв, вот условие задачи: Написать функцию, которая получает в качестве параметров две строки и возвращает в вызывающую программу количество прописных букв,... http://www.cyberforum.ru/cpp-beginners/thread54321.html
C++ Программа для вычисления логического выражения
Люди добрые ПОМОГИТЕ ПОЖАЛУЙСТА решить задачу - ЗАВТРА СДАВАТЬ !!!! Условие: Разработать программу для вычисления логического выражения.Должно быть построено логическое выражение , результат...
C++ цикл на графах
В заданном графе необходимо определить, существует ли цикл, проходящий по каждому ребру графа ровно один раз. Короче полная лажа......в решении предлагают использовать очередь для выяснения...
C++ Граф родственных отношений! http://www.cyberforum.ru/cpp-beginners/thread54301.html
Есть такое задание: Разработать граф родственных отношений для классов, каждый из которых характеризует свой тип объекта. Каждый тип объектов характеризуется рядом признаков: 1-й тип -...
C++ Вывод списка файлов и папок директории Доброго времени суток! Помогите пожалуйста написать функцию, описанную ниже. Функция: Вход: строка(адрес) E:\Games\Distributives\ Выход: список файлов и папок в этой=E:\Games\Distributives\... подробнее

Показать сообщение отдельно
Rififi
2359 / 1052 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
05.10.2009, 21:15
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
#include <algorithm>
#include <functional>
#include <iterator>
#include <iostream>
 
/*
    Дан массив а(10).
    Надо из этого массива элементы, которые делятся на 2 переписать в массив в,
    а которые делятся на 3 - в массив с.
*/
 
template <typename T>
struct divider : public std::unary_function<T, bool>
{
    divider(T x) : x_(x) {}
    bool operator()(T val) const
    { return (val % x_) == 0; }
    T x_;
};
 
template <typename It>
void out(It begin, It end)
{
    typedef typename std::iterator_traits<It>::value_type value_type;
    std::copy(begin, end, std::ostream_iterator<value_type>(std::cout, " "));
    std::cout << std::endl;
}
 
 
int main()
{
    const size_t N = 10;
    const int a[N] = {1,2,3,4,5,6,7,8,9,10};
    int b[N] = {0}, c[N] = {0};
 
    out(b, std::remove_copy_if(a, a+N, b, std::not1(divider<int>(2))));
    out(c, std::remove_copy_if(a, a+N, c, std::not1(divider<int>(3))));
 
    return 0;
}
проверка: http://codepad.org/9sY5r8OT
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru