Определить количество положительных элементов массива

27. Дан массив А(6). Определить количество положительных элементов
2 ответа

Lollipo,
#include <algorithm>
#include <iostream>
#include <functional>
 
int main() {
  int arr[] = { 1, -2, 0, -4, 1, 5};
  
  std::cout << "Number of positive elements: " << 
               std::count_if(arr, arr + sizeof(arr) / sizeof(arr[0]), std::bind2nd(std::greater<int>(), 0));
  
  return 0;
}
Результат: http://liveworkspace.org/code/62******************************


Решение с помощью boost::lambda:
#include <algorithm>
#include <iostream>
#include <boost/lambda/lambda.hpp>
 
int main() {
  int arr[] = { 1, 2, 0, -4, 1 };
  
  std::cout << "Number of positive elements: " << 
               std::count_if(arr, arr + sizeof(arr) / sizeof(arr[0]), boost::lambda::_1 > 0);
  
  return 0;
}
Результат: http://liveworkspace.org/code/88e58e8fea91ac744b87c40521bdb429