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

एक संख्या की पुनर्व्यवस्था जो इसके द्वारा C++ . में भी विभाज्य है

हमें एक पूर्णांक प्रकार संख्या दी गई है, मान लीजिए, संख्या। कार्य संख्या अंकों को इस तरह से पुनर्व्यवस्थित करना है कि पुनर्व्यवस्था के बाद बनने वाली संख्या भी दी गई संख्या यानी 'संख्या' से विभाज्य हो।

आइए इसके लिए विभिन्न इनपुट आउटपुट परिदृश्य देखें -

इनपुट - इंट नंबर =100035

आउटपुट − एक संख्या की पुनर्व्यवस्था जो इससे विभाज्य भी है:300105

स्पष्टीकरण - हमें 'नंबर' यानी 100035 के रूप में एक पूर्णांक संख्या दी गई है। अब, कार्य इन दिए गए अंकों को इस तरह से पुनर्व्यवस्थित करना है कि गठित संख्या 100035 से विभाज्य हो जाए। तो, अंकों को पुनर्व्यवस्थित करने के बाद हमें 300105 मिले जो संख्या 100035 से विभाज्य है।

इनपुट - इंट नंबर =1000035

आउटपुट − एक संख्या की पुनर्व्यवस्था जो इससे विभाज्य भी है:3000105

स्पष्टीकरण - हमें 'नंबर' के रूप में एक पूर्णांक संख्या दी गई है, यानी 1000035। अब, कार्य इन दिए गए अंकों को इस तरह से पुनर्व्यवस्थित करना है कि गठित संख्या 1000035 से विभाज्य हो। इसलिए, अंकों को पुनर्व्यवस्थित करने के बाद हमें 3000105 प्राप्त हुआ जो विभाज्य है। संख्या 1000035 से।

इनपुट - इंट नंबर =28

आउटपुट − एक संख्या की पुनर्व्यवस्था जो इससे भी विभाज्य हो:-1

स्पष्टीकरण - हमें 'संख्या' यानी 28 के रूप में एक पूर्णांक संख्या दी गई है। अब, कार्य इन दिए गए अंकों को इस तरह से पुनर्व्यवस्थित करना है कि गठित संख्या 28 से विभाज्य हो। इसलिए अंकों को पुनर्व्यवस्थित करने के बाद हमें 82 मिलता है जो कि नहीं है। संख्या 28 से विभाज्य है इसलिए आउटपुट -1 है।

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

  • पूर्णांक प्रकार का एक चर इनपुट करें, मान लें, संख्या और फ़ंक्शन को डेटा पास करें पुनर्व्यवस्था (संख्या)।

  • समारोह के अंदर पुनर्व्यवस्था (संख्या)

    • टाइप वेक्टर का एक वेरिएबल बनाएं जो इंटीजर टाइप वेरिएबल को स्टोर कर रहा हो, मान लें, vec(10, 0)।

    • फ़ंक्शन को कॉल करें total_count (संख्या, vec) और फ़ंक्शन के पैरामीटर के रूप में संख्या और vec पास करें।

    • लूप फॉर i से 2 तक i से 10 से कम तक प्रारंभ करें। लूप के अंदर, अस्थायी को संख्या * i पर सेट करें।

    • टाइप वेक्टर का एक वेरिएबल बनाएं जो पूर्णांक प्रकार के वेरिएबल को स्टोर कर रहा हो, मान लें, vec_2(10, 0)।

    • फ़ंक्शन को कॉल करें total_count(number, vec_2) और पास नंबर और vec_2 फ़ंक्शन के पैरामीटर के रूप में।

    • IF बराबर (vec.begin (), vec.end (), vec_2.begin ()) की जाँच करें, फिर अस्थायी लौटाएँ। ELSE, वापसी -1.

  • फंक्शन के अंदर Total_count(int number, vector &vec_3)

    • प्रारंभ लूप जबकि संख्या 1 है। लूप के अंदर, vec_3 को vec_3 [संख्या% 10]++ और संख्या को संख्या / 10 के रूप में सेट करें।

उदाहरण

#include<bits/stdc++.h>
using namespace std;
void total_count(int number, vector<int> &vec_3){
   while(number){
      vec_3[number % 10]++;
      number = number / 10;
   }
}
int Rearrangement(int number){
   vector<int> vec(10, 0);
   total_count(number, vec);
   for(int i = 2; i < 10; i++){
      int temp = number * i;
      vector<int> vec_2(10, 0);
      total_count(temp, vec_2);
      if(equal(vec.begin(), vec.end(), vec_2.begin())){
         return temp;
      }
   }
   return -1;
}
int main(){
   int number = 100035;
   cout<<"Rearrangement of a number which is also divisible by it is: "<<Rearrangement(number);
   return 0;
}

आउटपुट

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

Rearrangement of a number which is also divisible by it is: 300105

  1. जाँच करें कि C++ में कोई संख्या 23 से विभाज्य है या नहीं

    यहां हम एक प्रोग्राम देखेंगे, जो यह जांच सकता है कि कोई संख्या 23 से विभाज्य है या नहीं। मान लीजिए एक संख्या 1191216 दी गई है। यह 23 से विभाज्य है। विभाज्यता जांचने के लिए हमें इस नियम का पालन करना होगा - हर बार संख्या/छंटनी की गई संख्या का अंतिम अंक निकालें छोटी संख्या में 7 * (पिछली गणना की

  1. जाँच करें कि C++ में कोई बड़ी संख्या 20 से विभाज्य है या नहीं

    यहां हम देखेंगे कि किसी संख्या को 20 से विभाज्य कैसे किया जाता है या नहीं। इस मामले में संख्या बहुत बड़ी है। इसलिए हम संख्या को स्ट्रिंग के रूप में रखते हैं। एक संख्या 20 से विभाज्य होगी, जब वह 10 से विभाज्य होगी, और 10 को विभाजित करने के बाद, शेष संख्या 2 से विभाज्य होगी। तो मामला सरल है। यदि अंति

  1. C++ में CHAR_BIT

    CHAR_BIT चार में बिट्स की संख्या है। इसे C++ भाषा में “limits.h” हेडर फाइल में घोषित किया गया है। यह 8-बिट प्रति बाइट का होता है। यहाँ C++ भाषा में CHAR_BIT का एक उदाहरण दिया गया है, उदाहरण #include <bits/stdc++.h> using namespace std; int main() {    int x = 28;    int a