इस ट्यूटोरियल में, हम एक ऐसी संख्या खोजने जा रहे हैं, जिसके अंकों सहित कुछ संख्या दी गई संख्या N के बराबर है।
विचार सरल है, हम दी गई संख्या के बाएँ और दाएँ 100 संख्याओं की जाँच करने जा रहे हैं। यह एन 1000000000 के रूप में बाध्य नहीं होगा और योग 100 से अधिक नहीं होगा।
आइए समस्या को हल करने के लिए चरणों को देखें।
-
नंबर को इनिशियलाइज़ करें।
-
ऐसा लूप लिखें जो 100 बार पुनरावृत्त हो।
-
n - i और n + i मान प्राप्त करें।
-
अंकों का योग ज्ञात कीजिए और उन्हें जोड़िए।
-
यदि उनमें से कोई भी N के बराबर है, तो उन्हें प्रिंट करें।
-
उदाहरण
आइए कोड देखें।
#include <bits/stdc++.h> using namespace std; int digitsSum(int n) { int sum = 0; while (n) { sum += n % 10; n /= 10; } return sum; } void findX(long int n) { bool is_found = false; for (int i = 0; i <= 100; i++) { long int valueOnLeft = abs(n - i) + digitsSum(abs(n - i)); long int valueOnRight = n + i + digitsSum(n + i); if (valueOnLeft == n) { is_found = true; cout << abs(n - i) << " "; } if (valueOnRight == n) { is_found = true; cout << (n + i) << " "; } } if (!is_found) { cout << "No numbers found"; } cout << endl; } int main() { int n = 89; findX(n); return 0; }
आउटपुट
यदि आप उपरोक्त प्रोग्राम को निष्पादित करते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।
76
निष्कर्ष
यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।