count_if()函數返回滿足條件的範圍內的元素數。
例子:
Input: 0 1 2 3 4 5 6 7 8 9 Output: Total no of even numbers is: 5 Input: 2 3 4 5 6 7 8 9 10 11 12 13 Output: Total no of even numbers is: 6
用法:
count_if(lower_bound, upper_bound, function)
count_if函數采用三個參數,其中前兩個參數是元素序列的第一個和最後一個位置(範圍中不包括最後一個位置),而第三個參數是采用給定元素的函數作為參數一個接一個地排序,並根據條件返回布爾值
在該函數中指定。
然後,count_if()返回給定序列中比較器函數的元素數
(第三個參數)返回true。
// C++ program to show the working
// of count_if()
#include <bits/stdc++.h>
using namespace std;
// Function to check the
// number is even or odd
bool isEven(int i)
{
if (i % 2 == 0)
return true;
else
return false;
}
// Drivers code
int main()
{
vector<int> v;
for (int i = 0; i < 10; i++) {
v.push_back(i);
}
int noEven = count_if(v.begin(), v.end(),
isEven);
cout << "Total no of even numbers is: "
<< noEven;
return 0;
}
輸出:
Total no of even numbers is: 5
相關用法
注:本文由純淨天空篩選整理自Prateek Sharma 7大神的英文原創作品 count_if() in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。