C++ Algorithm Library - count_if() Function



Description

The C++ function std::algorithm::count_if() returns the number of occurrences of value from range that satisfies condition.

Declaration

Following is the declaration for std::algorithm::count_if() function form std::algorithm header.

C++98

template <class InputIterator, class Predicate>
typename iterator_traits<InputIterator>::difference_type
count_if (InputIterator first, InputIterator last, UnaryPredicate pred);

Parameters

  • first − Input iterators to the initial positions of the searched sequence.

  • last − Input iterators to the final positions of the searched sequence.

  • pred − Unary predicate which takes an argument and returns bool.

Return value

Returns the number of elements in the range for which pred returns true.

Exceptions

Throws an exception if either predicate or an operation on an iterator throws exception.

Please note that invalid parameters cause undefined behavior.

Time complexity

Linear in the distance between first to last.

Example

The following example shows the usage of std::algorithm::count_if() function.

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

bool predicate(int n) {
   return (n > 3);
}

int main(void) {
   vector<int> v = {1, 2, 3, 4, 5};
   int cnt;

   cnt = count_if(v.begin(), v.end(), predicate);

   cout << "There are " << cnt << " numbers are greater that 3." << endl;

   return 0;
}

Let us compile and run the above program, this will produce the following result −

There are 2 numbers are greater that 3.
algorithm.htm
Advertisements
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy