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

C++ प्रोग्राम में दी गई संख्याओं से विभाज्य संख्या को दो भागों में विभाजित करें

इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो एक संख्या को दो भागों में विभाजित करता है जो दी गई संख्याओं से विभाज्य होते हैं।

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

आइए समस्या को हल करने के लिए चरणों को देखें।

  • विभाजन के लिए संख्या और दो पूर्णांकों को प्रारंभ करें।

  • संख्या को तब तक दोहराएं जब तक कि पहला भाग पहली संख्या से विभाज्य न हो जाए।

  • प्रत्येक चार को एक अंक में परिवर्तित करके संख्या बनाएं।

  • लूप को तब तोड़ें जब वह पहली संख्या से विभाज्य हो।

  • अब, संख्या के दूसरे भाग के लिए अगली अनुक्रमणिका से पुनरावृति करें।

  • जैसा कि आप पहले भाग में करते हैं, वैसे ही नंबर बनाएं।

  • जांचें कि दूसरा भाग दूसरी संख्या से विभाज्य है या नहीं।

  • यदि पहला और दूसरा भाग संबंधित पहले और दूसरे नंबरों से विभाज्य हैं, तो उन्हें प्रिंट करें अन्यथा "संभव नहीं" प्रिंट करें।

उदाहरण

आइए कोड देखें।

#include <bits/stdc++.h>
using namespace std;
void checkTheDivisabilityOfPrefixAndSuffix(string num, int prefix_dividend, int suffix_dividend) {
   int N = num.length();
   bool is_prefix_divisable = false, is_suffix_divisable = false;
   int index = 0;
   int prefix = num[index] - '0';
   while (index < N) {
      if (prefix % prefix_dividend == 0) {
         is_prefix_divisable = true;
         break;
      }
      prefix = prefix * 10 + (num[++index] - '0');
   }
   int suffix = num[++index] - '0';
   while (index < N - 1) {
      suffix = suffix * 10 + (num[++index] - '0');
   }
   cout << suffix << endl;
   if (suffix % suffix_dividend == 0) {
      is_suffix_divisable = true;
   }
   if (is_prefix_divisable && is_suffix_divisable) {
      cout << prefix << " " << suffix << endl;
   }
   else {
      cout << "Not possible" << endl;
   }
}
int main() {
   string number = "125333";
   int prefix_dividend = 5;
   int suffix_dividend = 3;
   checkTheDivisabilityOfPrefixAndSuffix(number, prefix_dividend, suffix_dividend);
   return 0;
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

125 333

निष्कर्ष

यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।


  1. C++ . में दिए गए वृत्त के दो भागों के कोणों का सबसे छोटा अंतर ज्ञात करने का कार्यक्रम

    इस समस्या में, हमें एक सरणी दी गई है जो एक वृत्त के कोणों के आधार पर एक वृत्त के टुकड़े को दर्शाती है। हमारा कार्य C++ में दिए गए वृत्त के दो भागों के कोणों का सबसे छोटा अंतर खोजने के लिए एक कार्यक्रम बनाना है । समस्या का विवरण - हमें सरणी में वृत्त के सभी टुकड़ों के कोण दिए गए हैं। हमें टुकड़े को

  1. C++ प्रोग्राम दो नंबर स्वैप करने के लिए

    दो नंबरों को स्वैप करने के लिए प्रोग्राम बनाने के दो तरीके हैं। एक में एक अस्थायी चर का उपयोग करना शामिल है और दूसरा तरीका तीसरे चर का उपयोग नहीं करता है। इन्हें विस्तार से इस प्रकार समझाया गया है - अस्थायी चर का उपयोग करके दो नंबरों को स्वैप करने का कार्यक्रम एक अस्थायी चर का उपयोग करके दो नंबरों

  1. दो नंबर जोड़ने के लिए C++ प्रोग्राम

    जोड़ एक बुनियादी अंकगणितीय ऑपरेशन है। दो संख्याओं को जोड़ने का कार्यक्रम दो संख्याओं का योग करता है और उनके योग को स्क्रीन पर प्रिंट करता है। एक प्रोग्राम जो दो संख्याओं के योग को प्रदर्शित करता है, वह इस प्रकार दिया गया है - उदाहरण #include <iostream> using namespace std; int main() {