हमें एक ऐरे दिया गया है मान लीजिए arr[] पूर्णांक एलिमेंट्स का किसी भी दिए गए आकार का और कार्य उस संख्या के गुणनखंडों की संख्या की गणना करना है जिसकी गणना सभी ऐरे एलिमेंट्स को गुणा करके की जाती है।
ऐरे एक प्रकार की डेटा संरचना है जो एक ही प्रकार के एलिमेंट्स के निश्चित आकार के अनुक्रमिक संग्रह को स्टोर कर सकती है। एक ऐरे का उपयोग डेटा के संग्रह को स्टोर करने के लिए किया जाता है, लेकिन अक्सर एक ऐरे को एक ही प्रकार के वैरिएबल्स के संग्रह के रूप में सोचना अधिक उपयोगी होता है।
उदाहरण
इनपुट: int arr[] = {2, 3} आउटपुट: count is 4
व्याख्या: ऐरे का गुणनफल 2 * 3 = 6 है और 6 के गुणनखंड 1, 2, 3, 6 हैं। तो कुल मिलाकर 6 के 4 गुणनखंड हैं।
इनपुट: int arr[] = {2, 3, 5} आउटपुट: count is 8
व्याख्या: ऐरे का गुणनफल 2 * 3 * 5 = 30 है और 30 के गुणनखंड 1, 2, 3, 5, 6, 10, 15, 30 हैं। तो कुल मिलाकर 30 के 8 गुणनखंड हैं।
उपयोग किया गया दृष्टिकोण:
- एक ऐरे बनाएं मान लीजिए arr[]
- length() फ़ंक्शन का उपयोग करके ऐरे की लंबाई की गणना करें
- एक अस्थायी वैरिएबल घोषित करें मान लीजिए temp और इसे 1 पर सेट करें
- i के लिए 0 से लूप शुरू करें और i ऐरे के आकार से कम हो
- temp को temp *= arr[i] पर सेट करें
- एक और फ़ंक्शन कॉल करें जो काउंट वापस करेगा
- एलिमेंट्स की संख्या स्टोर करने के लिए एक अस्थायी वैरिएबल लें
- i के लिए 1 से लूप शुरू करें और i <= mul तक
- लूप के अंदर, जांचें यदि temp % i == 0 तो काउंट के मान को 1 से बढ़ाएं
- काउंट वापस करें
- परिणाम प्रिंट करें।
उदाहरण (C++ कोड)
#include <iostream>
using namespace std;
// गुणनखंडों की संख्या गिनने का फ़ंक्शन
int divisors(int N){
// परिणाम को 0 से इनिशियलाइज़ करें
int result = 0;
// दी गई संख्या N के प्रत्येक गुणनखंड के लिए परिणाम बढ़ाएं
for (int i = 1; i <= N; ++i){
if (N % i == 0){
result++;
}
}
return result;
}
int countmultiples(int arr_1[], int size){
// दिए गए ऐरे के सभी एलिमेंट्स को गुणा करने के लिए
int temp = 1;
for (int i = 0; i < size; ++i){
temp *= arr_1[i];
}
return divisors(temp);
}
// मुख्य फ़ंक्शन
int main(){
int arr_1[] = { 5, 10, 15 };
int size = sizeof(arr_1) / sizeof(arr_1[0]);
cout << "count is " << countmultiples(arr_1, size);
return 0;
}
आउटपुट
count is 16