Computer >> Máy Tính >  >> Lập trình >> C ++

count_if () trong C ++ STL

Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và các ví dụ của hàm std ::count_if () trong C ++ STL.

std ::count_if () là gì?

Hàm std ::count_if () là một hàm có sẵn trong C ++ STL, được định nghĩa trong tệp tiêu đề . count_if () được sử dụng để lấy số phần tử trong một phạm vi xác định thỏa mãn một điều kiện. Hàm này trả về một giá trị nguyên là số phần tử thỏa mãn điều kiện.

Hàm không chỉ lặp qua phạm vi đã cho mà còn kiểm tra xem câu lệnh hoặc điều kiện có đúng không và đếm bao nhiêu lần câu lệnh hoặc điều kiện là đúng và trả về kết quả.

Cú pháp

count_if(start, end, condition);

Tham số

Hàm chấp nhận (các) tham số sau -

  • bắt đầu, kết thúc - Đây là các trình vòng lặp có thể được sử dụng để cung cấp một phạm vi mà chúng ta phải sử dụng hàm. bắt đầu cung cấp vị trí đầu của phạm vi và kết thúc cung cấp vị trí kết thúc của phạm vi.
  • điều kiện - Đây là điều kiện mà chúng tôi muốn kiểm tra. Điều kiện là hàm một bậc phải được áp dụng trên phạm vi nhất định.

Giá trị trả về

Hàm này trả về số phần tử đáp ứng điều kiện.

Ví dụ

Đầu vào

bool iseve(int i){ return ((i%2)==0); }
int a = count_if( vect.begin(), vect.end(), iseve ); /* vect has 10 integers 1-10*/

Đầu ra

even numbers = 2 4 6 8 10

Ví dụ

#include <bits/stdc++.h>
using namespace std;
bool check_odd(int i){
   if (i % 2!= 0)
      return true;
   else
      return false;
}
 int main() {
   vector<int> vec;
   for (int i = 0; i < 10; i++){
      vec.push_back(i);
   }
   int total_odd = count_if(vec.begin(), vec.end(), check_odd);
   cout<<"Number of odd is: "<<total_odd;
   return 0;
}

Đầu ra

Number of odd is: 5