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

सी++ में कीथ नंबर

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

संख्या n को कीथ संख्या कहा जाता है यदि यह अपने अंकों का उपयोग करके उत्पन्न अनुक्रम में प्रकट होती है। अनुक्रम में पहले n पद होते हैं क्योंकि संख्या n के अंक होते हैं और अन्य शब्दों का पुनरावर्ती रूप से पिछले n पदों के योग के रूप में मूल्यांकन किया जाता है।

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

  • संख्या n प्रारंभ करें।
  • सीक्वेंस को स्टोर करने के लिए एक खाली वेक्टर एलिमेंट को इनिशियलाइज़ करें।
  • अंकों की गणना करें और प्रत्येक अंक को vecor में जोड़ें।
  • अंकों के वेक्टर को उलट दें।
  • 0 के साथ एक वेरिएबल प्रारंभ करें जिसे अगला तत्व कहा जाता है।
  • एक लूप लिखें जो अगले तत्व तक n से कम हो।
    • अगला तत्व प्राप्त करने के लिए अंतिम n अंक जोड़ें।
    • वेक्टर में अगला तत्व जोड़ें।
  • यदि अगला तत्व n और असत्य के बराबर है, तो सही लौटें।

उदाहरण

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

#include<bits/stdc++.h>
using namespace std;
bool isKeithNumber(int n) {
   vector<int> elements;
   int temp = n, digitsCount = 0;
   while (temp > 0) {
      elements.push_back(temp % 10);
      temp = temp / 10;
      digitsCount++;
   }
   reverse(elements.begin(), elements.end());
   int nextElement = 0, i = digitsCount;
   while (nextElement < n) {
      nextElement = 0;
      for (int j = 1; j <= digitsCount; j++) {
         nextElement += elements[i - j];
      }
      elements.push_back(nextElement);
      i++;
   }
   return nextElement == n;
}
int main() {
   isKeithNumber(43) ? cout << "Yes" << endl : cout << "No" << endl;
   isKeithNumber(14) ? cout << "Yes" << endl : cout << "No" << endl;
   isKeithNumber(197) ? cout << "Yes" << endl : cout << "No" << endl;
   return 0;
}

आउटपुट

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

No
Yes
Yes

निष्कर्ष

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


  1. C++ में मितव्ययी संख्या

    इस समस्या में, हमें एक धनात्मक पूर्णांक N दिया जाता है। हमारा कार्य यह जाँचने के लिए एक प्रोग्राम बनाना है कि दी गई संख्या मितव्ययी संख्या है या नहीं। मितव्ययी संख्या - एक संख्या जिसके अंकों की संख्या दी गई संख्या के अभाज्य गुणनखंड में अंकों की संख्या से अधिक है। उदाहरण − 625, संख्या 625 का अभाज्

  1. सी++ पेंटाटोप नंबर

    पास्कल के त्रिभुज में एक पंचकोण संख्या को पाँचवीं संख्या के रूप में वर्णित किया गया है। अब, जैसा कि आप जानते हैं, यह पांचवीं संख्या है, तो इसका मतलब है कि हमारे पास पास्कल के त्रिकोण में कम से कम पांच संख्याएं होनी चाहिए, इसलिए इस श्रृंखला की पहली संख्या 1 4 6 4 1 से शुरू होती है। पास्कल त्रिभुज की

  1. C++ में एडम नंबर

    इस खंड में हम देखेंगे कि एक प्रोग्राम कैसे लिखा जाता है जो यह जांच सकता है कि दी गई संख्या एडम नंबर है या नहीं। कोड में गोता लगाने से पहले आइए देखें कि एडम नंबर क्या है? आदम संख्या एक संख्या है मान लीजिए n, तो यदि n का वर्ग और n के विपरीत का वर्ग एक-दूसरे के विपरीत हों, तो वह संख्या आदम संख्या होती