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

Обобщенное программирование - C++

Восстановить пароль Регистрация
 
AlexandeRR775
0 / 0 / 0
Регистрация: 23.05.2012
Сообщений: 15
17.01.2013, 19:50     Обобщенное программирование #1
Всем доброго времени суток.Помогите пожалуйста с идеями и по возможности с реализацией решения вот такой задачи:
"Найти наиболее часто встречаемый элемент в последовательности целых чисел {a1, a2,...,an}".Программа должна быть с обобщенными функциями,в этом и проблема. Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2013, 19:50     Обобщенное программирование
Посмотрите здесь:

программирование на С C++
C++ Программирование на С
3d программирование C++
Программирование на C++ C++
C++ Программирование
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
17.01.2013, 19:52     Обобщенное программирование #2
Обобщённое программирование это с использованием шаблонов что ли?
AlexandeRR775
0 / 0 / 0
Регистрация: 23.05.2012
Сообщений: 15
17.01.2013, 20:01  [ТС]     Обобщенное программирование #3
Да,еще алгоритмов и т.д.
вот ссылка на пример работы:http://rghost.ru/43105989
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4925 / 2668 / 243
Регистрация: 29.11.2010
Сообщений: 7,421
17.01.2013, 20:03     Обобщенное программирование #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <map>
#include <algorithm>
 
int main()
{
    int arr[] = { 1, 2, 5, 1, 6, 2, 3, 2, 2, 1, 8, 3, 5, 9};
    std::map<int, int> m;
    for (auto &x : arr)
        ++m[x];
    std::cout << std::max_element(m.cbegin(), m.cend(),
        [](const std::pair<int, int> &p1, const std::pair<int, int> &p2)
        { return p1.second < p2.second; } )->first << std::endl;
}
AlexandeRR775
0 / 0 / 0
Регистрация: 23.05.2012
Сообщений: 15
17.01.2013, 22:33  [ТС]     Обобщенное программирование #5
Все исходные данные запрашиваются у пользователя, а результаты выдаются в поток cout.В программе должны использоваться компоненты стандартной библиотеки.Данные необходимо размещать в контейнере, а саму обработку реализовать с использованием алгоритмов стандартной библиотеки.Задача должна быть решена без явного использования операторов цикла.

Добавлено через 10 минут
Без циклов. С помощью обобщенных функций.

Добавлено через 2 часа 0 минут
Помогите плиз очень помощь нужна.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4925 / 2668 / 243
Регистрация: 29.11.2010
Сообщений: 7,421
18.01.2013, 15:02     Обобщенное программирование #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <map>
#include <vector>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::vector<int> v((std::istream_iterator<int>(std::cin)),
                        std::istream_iterator<int>() );
    std::map<int, int> m;
    std::for_each(v.begin(), v.end(), [&m](const int x) { ++m[x]; } );
    std::cout << std::max_element(m.cbegin(), m.cend(),
        [](const std::pair<int, int> &p1, const std::pair<int, int> &p2)
        { return p1.second < p2.second; } )->first << std::endl;
}
Yandex
Объявления
18.01.2013, 15:02     Обобщенное программирование
Ответ Создать тему
Опции темы

Текущее время: 03:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru