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

Шаблоны функций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сформировать массив http://www.cyberforum.ru/cpp-beginners/thread431786.html
1.Сформировать массив структур данных об N точках P(x k,y k), k, принадлежащих прямоугольнику -a<x<a -a<y<a a>0 . В структуру включить следущие поля. Номер точки. Координаты точки.Координаты...
C++ Вычислить сумму ряда. Где-то напутал знаки или формула ряда не правильная. Посмотрите свежим взглядом. Привет! Пишу простую контрольную, не могу понять, то ли я где-то со знаками туплю, то ли формула не корректна. Задание: написать функцию вычисления суммы ряда. для диапазона значений 0.1 .. 0.9 ... http://www.cyberforum.ru/cpp-beginners/thread431779.html
Оператор continue. C++
Помогите:Вывести нечетные числа от 0 до 100, используя оператор continue.
для чего и как исползовать "template"? C++
Привет всем... может ктото обяснит как исползовать template? спасибо заранее... П.С гугл не впомош, если ктото даст пример то буду рад.. ;)
C++ Найти наибольший общий делитель всех элементов массива http://www.cyberforum.ru/cpp-beginners/thread431725.html
Такая задача: Найти наибольший общий делитель всех элементов массива (на который они все делятся без остатка).
C++ Запуск функции О_о есть функция void Account::Save (FILE *f) { int nlen = strlen (card_holder); fprintf (f, "%d %s %c%c%c %c%c/%c%c %d\r\n", sum, card_number, cvc2, cvc2, cvc2, validity.month, validity.month,... подробнее

Показать сообщение отдельно
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
20.01.2012, 13:43
Цитата Сообщение от k_a_t_y Посмотреть сообщение
- подсчет количества элементов с указанной характеристикой (положительные, отрицательные, нулевые, кратные m) с применением предикатов;
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
#include <iostream>
 
template <class T, class Predicate> size_t count_if(T first, T last, Predicate pred)
{
   size_t count;
   for ( count = 0 ; first != last ; ++first )
      if ( pred (*first) )
         ++count;
   return count;
}
 
bool odd(int val) { return val % 2; }  
 
template <typename T> void print (T *first, T *last)
{
   std::cout << std::endl;
   for ( ; first != last ; ++first )
      std::cout << *first << " ";
   std::cout << std::endl;
}             
 
int main()
{
   int arr[] = { 1, 2 ,3 ,4 , 5};
   const size_t size = sizeof(arr) / sizeof(arr[0]);
   
   print(arr, arr + size);
   std::cout << "Coutn odd = "  << count_if(arr, arr + size, odd) << std::endl
             << "Count Even = " << count_if(arr, arr + size, [](int val) { return !(val % 2); }) << std::endl;
   return 0;
}
http://liveworkspace.org/code/bccea8...f3f68085007141
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru