एक सरणी के साथ दिया गया है और कार्य सी ++ में मानक टेम्पलेट लाइब्रेरी का उपयोग करके एन द्वारा विभाज्य संख्या को खोजना है।
इस समस्या को हल करने के लिए हम C++ मानक टेम्पलेट लाइब्रेरी में मौजूद फंक्शन count_if() का उपयोग कर रहे हैं।
एक count_if() फ़ंक्शन क्या है?
सिंटैक्स
count_if(LowerBound, UpperBound, function)
विवरण - यह फ़ंक्शन एक सरणी में तत्वों की संख्या देता है जो दी गई शर्त को पूरा करता है। इसमें तीन पैरामीटर लगते हैं।
- निचला बाउंड - यह किसी सरणी या किसी अन्य अनुक्रम के पहले तत्व की ओर इशारा करता है।
- ऊपरी बाउंड - यह किसी सरणी या किसी अन्य अनुक्रम के अंतिम तत्व की ओर इशारा करता है।
- फ़ंक्शन - यह निर्दिष्ट शर्त के आधार पर बूलियन मान लौटाता है।
उदाहरण
Input-: array[] = {2, 4, 1, 5, 8, 9}
N = 4
Output-: Elements divisible by 4: 2
Input-: array[] = {1, 2, 3, 4, 5, 10}
N = 2
Output: Elements divisible by 2: 3 नीचे दिए गए कार्यक्रम में उपयोग किया गया दृष्टिकोण इस प्रकार है -
- पूर्णांक प्रकार की एक सरणी में पूर्णांक मानों को इनपुट करें।
- यह जांचने के लिए बूल फ़ंक्शन बनाएं कि किसी सरणी का तत्व उपयोगकर्ता इनपुट मान N से विभाज्य है या नहीं।
- फ़ंक्शन को कॉल करें count_if() जो पहले और अंतिम तत्व और फ़ंक्शन को पैरामीटर के रूप में लेता है।
उदाहरण
#include <bits/stdc++.h>
using namespace std;
int n;
//function to check if the element is divisible by n
bool check(int i) {
if (i % n == 0)
return true;
else
return false;
}
int main() {
int arr[] = {2, 4, 1, 5, 8, 9};
n = 4;
int size = sizeof(arr) / sizeof(arr[0]);
int temp = count_if(arr, arr + size, check);
cout<<"Elements divisible by "<<n<< ": " <<temp;
return 0;
} आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
Elements divisible by 4: 2