count_if () в C ++ STL

Опубликовано: 31 Декабря, 2021

Функция count_if () возвращает количество элементов в диапазоне, удовлетворяющих условию.

Примеры:

Ввод: 0 1 2 3 4 5 6 7 8 9
Вывод: Всего нет четных чисел: 5

Ввод: 2 3 4 5 6 7 8 9 10 11 12 13
Вывод: Всего нет четных чисел: 6

Синтаксис:

count_if (нижняя_ граница, верхняя_ граница, функция)

Функция count_if принимает три параметра, первые два из которых являются первой и последней позицией последовательности элементов (где последняя позиция не включена в диапазон), а третий параметр - это функция, которая принимает элемент заданного последовательность один за другим в качестве параметра и возвращает логическое значение на основе условия
указанный в этой функции.
Затем count_if () возвращает количество элементов в заданной последовательности, для которых функция компаратора
(третий параметр) возвращает истину.

// 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;
}
Выход:
Всего нет четных чисел: 5
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
C++