Related Articles
Find elements of an Array which are Odd and Even using STL in C++
• Last Updated : 18 Dec, 2019

Given an array, the task is to find elements which are odd and even, using STL in C++

Examples:

```Input: a[] = {1, 2, 3, 4, 5, 10}
Output: Odd = 3, Even = 3

Input:a[] = {4, 3, 5, 9, 11}
Output: Odd = 4, Even = 1
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: This can be achieved using count_if() method in C++

Syntax:

```count_if(lower_bound, upper_bound, function)
```

where, function takes the element of given sequence one by one as a parameter and returns a boolean value on the basis of condition specified in that function.

In this case, the function will be:

```bool isOdd(int i)
{
if (i % 2 != 0)
return true;
else
return false;
}
```

Below is the implementation of the above approach:

 `// C++ simple program to``// find elements which are``// odd and even`` ` `#include ``using` `namespace` `std;`` ` `// Function to check ``// if the element is off or even``bool` `isOdd(``int` `i)``{``    ``if` `(i % 2 != 0)``        ``return` `true``;``    ``else``        ``return` `false``;``}`` ` `// Driver code``int` `main()``{``    ``int` `a[] = { 1, 2, 6, 3, 4, 5 };`` ` `    ``int` `n = ``sizeof``(a) / ``sizeof``(a);`` ` `    ``int` `count = count_if(a, a + n, isOdd);`` ` `    ``cout << ``"Odd: "` `<< count << endl;``    ``cout << ``"Even: "` `<< (n - count) << endl;`` ` `    ``return` `0;``}`
Output:
```Odd: 3
Even: 3
```
Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for the language and STL.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.
My Personal Notes arrow_drop_up