當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ count_if()用法及代碼示例


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。