Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ में एक सरणी में विभाज्य जोड़े की गणना करें

हमें पूर्णांक तत्वों वाले किसी भी आकार की एक सरणी दी गई है और कार्य एक सरणी में जोड़े की गणना की गणना करना है जैसे कि एक जोड़ी का एक तत्व एक जोड़ी के दूसरे तत्व को विभाजित करता है।

एक प्रकार की डेटा संरचना को व्यवस्थित करता है जो एक ही प्रकार के तत्वों के एक निश्चित आकार के अनुक्रमिक संग्रह को संग्रहीत कर सकता है। डेटा के संग्रह को संग्रहीत करने के लिए एक सरणी का उपयोग किया जाता है, लेकिन एक सरणी को उसी प्रकार के चर के संग्रह के रूप में सोचना अक्सर अधिक उपयोगी होता है।

उदाहरण के लिए

Input − int arr[] = {1, 2, 3, 6}
Output − count is 4

स्पष्टीकरण - (1,2), (1,3), (1,6) और (3,6) ऐसे जोड़े हैं जिनमें एक जोड़े का एक तत्व दूसरे को 1 से विभाजित करता है और किसी भी संख्या को 3 विभाजित कर सकता है। तो गिनती 4 है।

Input − int arr[] = {2, 5, 10}
Output − count is 2

स्पष्टीकरण - (2, 10) और (5,10) ऐसे जोड़े हैं जिनमें एक जोड़े का एक तत्व दूसरे को विभाजित करता है जैसे 2 10 को विभाजित कर सकता है और 5 भी 10 को विभाजित कर सकता है। तो गिनती 2 है।

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

  • एक सरणी बनाएं मान लें, arr[]

  • लंबाई () फ़ंक्शन का उपयोग करके एक सरणी की लंबाई की गणना करें जो एक सरणी में तत्वों के अनुसार एक पूर्णांक मान लौटाएगा।

  • एक अस्थायी चर लें जो केवल एक सरणी में मौजूद तत्वों की संख्या को संग्रहीत करेगा।

  • i से 0 तक के लिए लूप प्रारंभ करें और मैं एक सरणी के आकार से छोटा हूं

  • लूप के अंदर एक और लूप शुरू करें जिसमें j से i+1 तक j आकार से छोटा हो

  • लूप के अंदर जांचें कि क्या arr[i]% arr[j] =0 या arr[j]% arr[i] =0 है, तो गिनती बढ़ाएं

  • गिनती लौटाएं

  • परिणाम प्रिंट करें।

उदाहरण

#include <iostream>
using namespace std;
int divisibles(int a[], int size){
   int result = 0;
   // Iterating through all pairs
   for (int i=0; i<size; i++){
      for (int j=i+1; j<size; j++){
         if (a[i] % a[j] == 0 || a[j] % a[i] == 0){
            result++;
         }
      }
   }
   return result;
}
int main(){
   int a[] = {1, 4, 7, 8, 9};
   int size = sizeof(a) / sizeof(a[0]);
   cout <<"count is " <<divisibles(a, size);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो हमें निम्न आउटपुट मिलेगा -

count is 5

  1. सी ++ में क्रमबद्ध बाइनरी सरणी में 1 की गणना करें

    इस ट्यूटोरियल में, हम एक क्रमबद्ध बाइनरी एरे में 1 को खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें केवल 1 और 0 वाली एक सरणी प्रदान की जाएगी। हमारा कार्य सरणी में मौजूद 1 की संख्या को गिनना है। उदाहरण #include <bits/stdc++.h> using namespace std; //returning the count of 1 int coun

  1. सी ++ में एक सरणी को उलट दें

    लेख C++ कोडिंग का उपयोग करते हुए अवरोही क्रम में उलटे जाने के लिए एक सरणी को प्रदर्शित करता है जिसमें उच्चतम सूचकांक को लूप में सरणी को पार करके निम्नतम सूचकांक में बदल दिया जाता है। उदाहरण #include <iostream> #include <algorithm> using namespace std; void reverseArray(int arr[], int n){

  1. सी++ प्रोग्राम एक ऐरे में व्युत्क्रम की गणना करने के लिए

    काउंट इनवर्जन का अर्थ है किसी सरणी को सॉर्ट करने के लिए आवश्यक स्विच की संख्या। उलटा गिनती =0, जब सरणी को क्रमबद्ध किया जाता है। उलटा गिनती =अधिकतम, जब सरणी को उल्टे क्रम में क्रमबद्ध किया जाता है। आइए एक सरणी में उलटा गिनने के लिए एक C++ प्रोग्राम विकसित करें। एल्गोरिदम Begin    Function