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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nfnicolas
3 / 3 / 0
Регистрация: 07.02.2016
Сообщений: 140
Завершенные тесты: 2
#1

Compair deque - C++

19.07.2016, 00:17. Просмотров 149. Ответов 2
Метки нет (Все метки)

есть два списка. Теперь мне нужно сравнить элементы если х <у то return (x+y) . я так думаю надо результат в 3 список записать
как мне провести сравнение?? желательно с применением функциональных объектов
C++
1
2
3
4
5
6
7
8
9
deque<float>X;
    deque<float>Y;
    for (int i = 0; i < 7; ++i)
        X.push_back(i+(rand() % 25));
    for (int i = 0; i < 7; ++i)
    Y.push_back(i + (rand() % 67));
    copy(X.begin(), X.end(), ostream_iterator<float>(cout, " "));
    cout << "\n";
    copy(Y.begin(), Y.end(), ostream_iterator<float>(cout, " "));
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2016, 00:17     Compair deque
Посмотрите здесь:

STL deque - C++
Устройство, основные операции и их стоимость, особенности использования deque. Ни где не могу найти стоимость выполнения основных...

Контейнер deque - C++
Задание:(используя контейнер deque) ввести последовательность натуральных чисел,у конце которой 0.Не сохраняя всей последовательности в...

deque<float> - C++
Создать контейнер deque и заполнить его типом данных &lt;float&gt;, вывести на экран. Удалив одни элементы и заменив другие вывести на экран...

std::deque - C++
Как известно при добавлении в конец вектора элементов(и не только в конец) может возникнуть перераспределение памяти что переместит данные...

vector, list, deque - C++
Пытаюсь разобраться, куда лучше какой контейнер применять, под какие задачи. Первый вопрос по списку: Сказано, что список удаляет любой...

deque iterator not dereferencable - C++
итак программа должна считывать из файла данные об автобусных маршрутах (имя водителя, номер маршрута и т.д.). После этого сортировать...

Deque - сравнение элементов - C++
Пусть даны две очереди X и Y, содержащие вещественные числа. Из каждой очереди одновременно извлекается по одному числу x и y...

STL, deque, pair - C++
Здравствуйте, помогите пожалуйста разобраться. Есть такая очередь: deque&lt;pair&lt;int, timeval&gt; &gt; last_query Как работать с...

Как реализован deque в STL ? - C++
Как реализован deque в STL ? Насколько я понимаю условно все разделяется на блок с адресами и блоки с данными. Есть какие-то...

Как работает std::deque? - C++
Пытаюсь разобраться в работе std-шного дека. Веб-серфинг дал следующее: Данные хранятся в куче небольшими блоками(массивами) в виде...

Написать свою реализацию deque - C++
Всем привет, требуется написать свою реализацию deque. Я до этого никогда не сталкивался с распределением памяти, аллокаторами и другими...

STL, deque Перераспределение памяти - C++
Есть книга, в ней написано такое о деке Можно ли пример увидеть, а-то чего-то непонятно. Пример когда все итераторы из-за...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6290 / 5893 / 1911
Регистрация: 18.12.2011
Сообщений: 15,132
Завершенные тесты: 1
19.07.2016, 08:44     Compair deque #2
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
#include <deque>
#include <iostream>
#include <ctime>
using namespace std;
void compare(deque<int>& A,deque<int>& B,deque<int>& Result)
{
    Result.clear();
    deque<int>::iterator pa=A.begin();
    deque<int>::iterator pb=B.begin();
    for(;pa!=A.end() && pb!=B.end();++pa,++pb)
    {
        if( *pa<*pb )
            Result.push_back(*pa+*pb);
    }
}
int main()
{
    srand((unsigned)time(NULL));
    deque<int>X,Y,Result;
    for (int i = 0; i < 20; ++i)
        X.push_back(i + rand() % 25);
    for (int i = 0; i < 20; ++i)
        Y.push_back(i + rand() % 25);
    copy(X.begin(), X.end(), ostream_iterator<int>(cout, " "));
    cout << endl;
    copy(Y.begin(), Y.end(), ostream_iterator<int>(cout, " "));
    cout << endl;
    compare(X,Y,Result);
    copy(Result.begin(), Result.end(), ostream_iterator<int>(cout, " "));
    cout << endl;
    system("pause");
    return 0;
}
John Prick
773 / 706 / 129
Регистрация: 27.07.2012
Сообщений: 2,022
Завершенные тесты: 3
19.07.2016, 09:15     Compair deque #3
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
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <algorithm>
#include <iterator>
#include <deque>
#include <functional>
 
using std::deque;
using std::cout;
using std::endl;
using std::copy;
using std::ostream_iterator;
 
template <class II, class OI, class BP, class BO>
void transform_if(II b1, II e1, II b2, II e2, OI r, BP bp, BO bo)
{
    for (; b1 != e1 && b2 != e2; ++b1, ++b2)
    {
        if (bp(*b1, *b2))
        {
            *r = bo(*b1, *b2);
            ++r;
        }
    }
}
 
int main()
{
    srand((unsigned)time(NULL));
 
    deque<int> X, Y, Result;
    for (int i = 0; i < 20; ++i)
        X.push_back(i + rand() % 25);
    for (int i = 0; i < 20; ++i)
        Y.push_back(i + rand() % 25);
    copy(X.begin(), X.end(), ostream_iterator<int>(cout, " "));
    cout << endl;
    copy(Y.begin(), Y.end(), ostream_iterator<int>(cout, " "));
    cout << endl;
 
    transform_if(X.begin(), X.end(), Y.begin(), Y.end(),
        std::back_inserter(Result), std::less<int>(), std::plus<int>());
 
    copy(Result.begin(), Result.end(), ostream_iterator<int>(cout, " "));
    cout << endl;
    system("pause");
}
Yandex
Объявления
19.07.2016, 09:15     Compair deque
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru