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

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

Войти
Регистрация
Восстановить пароль
 
KingR
-6 / 6 / 1
Регистрация: 23.05.2010
Сообщений: 133
#1

algorithm - C++

11.11.2010, 23:47. Просмотров 815. Ответов 4
Метки нет (Все метки)

дано последовательность целих чисел
1.для каждого елемента найти количество цифр числа( count_if)
2.после каждого симетріческого елемента вставить 0 (find_if)
3. заполнить список трьохзначними симетричискеми числами(generate)
4.удалить значения сума цифр которих ровна Х(remove_if)
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
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
 
int simple(int n)
{  
        for(int i=2;i<=n/2;i++)
                if( (n%i)==0 )
                        return 0;  
        return 1;  
};
 
int syma(int v){
    int k=0;
    while(v!=0){
        k+=v%10;
        v=v/10;
    }
    return k;
};
int kilk(int v){
    int k=0,p=0;
    while(v!=0){
        k+=v%10;
        v=v/10;
        p++;
    }
    return p;
};
bool symetr(int &x){
    int t=x;
    vector<int> v;
    while(t!=0){
        v.push_back(t%10);
        t/=10;
    }
    t=x;
    for(int i=v.size()-1;i>=0;--i){
        if(v[i]!=t%10) return false;
        t/=10;
    }
    return true;
};
 
void main(){
    int n,x;
    cin>>n>>x;
    vector<int> v(n),b(n);
    vector<int>::iterator it=v.begin(),ip=b.begin();
    cout<<endl<<endl;
    for(int i=0; i<n; i++){
        cin>>v[i];
    };
    //1
    cout<<endl<<count_if(v.begin(),v.end(),simple);
 
    //2
    cout<<endl<<for_each(v.begin(), v.end(),kilk );
    //3
    it=v.begin();
    it=find_if(v.begin(), v.end(),symetr);
    v.insert(v.begin(),v.end(),it,0);
    for (it=v.begin(); it!=v.end(); ++iy)
    cout << " " << *it;
    //4
    generate(b.begin(),b.end(),symetr);
    for (ip=b.begin(); ip!=b.end(); ++ip)
    cout << " " << *ip;
    //5
    it=v.begin();
    while(it!=v.end())
    {
    if(syma(*it)==x)
    cout<<endl<<remove_if(v.begin(), v.end(), syma);
    it++;}
}
штото делал но не получилось
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.11.2010, 23:47     algorithm
Посмотрите здесь:

<algorithm> - C++
есть перегруженная функция sort() sort (iter start, iter end, comp func); эта версия позволяет самостоятельно задавать функцию...

Библиотека <algorithm> в [c++] - C++
Библиотека &lt;algorithm&gt; в как она работает? если можно то с примерами.

Не находит algorithm.h - C++
собственно задание Вычислить произведение элементов между первым и последним нулем,но при компиляции выдает ошибку atal error C1083: Cannot...

algorithm: find_if - C++
В етой задачке должно виводить симетрическии числа но не делает етого Почему подскажите:-#include&lt;iostream&gt; #include&lt;algorithm&gt; ...

algorithm std::sort - C++
Почему так делать нельзя? #include &lt;algorithm&gt; using namespace std; class T { private: int arr;

Error C3892: algorithm::merge - C++
Доброго времени суток, суть проблемы такова, хотел воспользоваться алгоритмом merge из библиотеки algorithm, но выдает следующую ошибку,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Unforgiven_00
60 / 60 / 2
Регистрация: 12.10.2010
Сообщений: 129
12.11.2010, 00:21     algorithm #2
Что именно не получаеться?
KingR
-6 / 6 / 1
Регистрация: 23.05.2010
Сообщений: 133
12.11.2010, 00:34  [ТС]     algorithm #3
Цитата Сообщение от Unforgiven_00 Посмотреть сообщение
Что именно не получаеться?
не понимаю почему не работает remove_if и другие или может я в описание ошибся...
Unforgiven_00
60 / 60 / 2
Регистрация: 12.10.2010
Сообщений: 129
12.11.2010, 00:40     algorithm #4
может сдесь надо не int a bool?
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
int simple(int n)
{  
        for(int i=2;i<=n/2;i++)
                if( (n%i)==0 )
                        return 0;  
        return 1;  
};
 
int syma(int v){
        int k=0;
        while(v!=0){
                k+=v%10;
                v=v/10;
        }
        return k;
};
int kilk(int v){
        int k=0,p=0;
        while(v!=0){
                k+=v%10;
                v=v/10;
                p++;
        }
        return p;
};
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2010, 00:44     algorithm
Еще ссылки по теме:

Как заставить работать <algorithm> - C++
Здравствуйте! У меня есть программа которая vector &lt;int&gt; найдет номер максимального элемента! vector &lt;int&gt;::const_iterator MAX =...

Сортировка vectora обьектов функцией sort из algorithm - C++
помогите написать предикат CompareStudent к функции sort нужно чтобы вначале сортировало по Курсу, потом по Фамилии и Имени есть...

Ошибка при одновременном подключении windows.h и algorithm.h - C++
Здравствуйте. Возникла ошибка следующего рода, при одновременном подключении windows.h и algorithm.h возникает конфликт между макросом max...

Метод ближайшего соседа через STL Algorithm - C++
Добрый день. Подскажите можно метод ближайшего соседа сделать через сортировку с функтором?

Реализовать алгоритм xor-шифрования с использованием модуля algorithm - C++
как можно с помощью функций модуля algorithm реализовать простой алгоритм xor-шифрования? просто в классе есть много переменных которые...

Заголовочный фаил <algorithm> (объясните что это такое) - C++
Здравствуйте, товарищи! Что такое #include &lt;algorithm&gt;? Какие она имеет функции или макросы? И если можно их предназначение?


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

Или воспользуйтесь поиском по форуму:
KingR
-6 / 6 / 1
Регистрация: 23.05.2010
Сообщений: 133
12.11.2010, 00:44  [ТС]     algorithm #5
вроде то самое што и било(

а можете тогда так сказать: функции я правильно написал или нет ? штоб я знал где ошибка в мейн или в ф-циях

и какие алгоритми нужно "присвоевать" итераторам?
Yandex
Объявления
12.11.2010, 00:44     algorithm
Ответ Создать тему
Опции темы

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