यहां हम एक समस्या देखेंगे, जहां हम एक संख्या n लेते हैं, हमें एक और मान x ज्ञात करना होता है, जैसे कि x का x + अंकों का योग दी गई संख्या n के समान हो। मान लीजिए n का मान 21 है। यह प्रोग्राम एक संख्या x =15, 15 + अंकों का योग 15, यानी 15 + 1 + 5 =21 =n के रूप में लौटाएगा।
इस समस्या को हल करने के लिए, हमें सरल दृष्टिकोण का पालन करना होगा। हम 1 से n तक पुनरावृति करेंगे, प्रत्येक पुनरावृत्ति में, हम देखेंगे कि क्या संख्या का योग और उसके अंकों का योग संख्या के समान है, तो रुकें, अन्यथा जारी रखें।
उदाहरण
#include<iostream>
using namespace std;
int getDigitSum(int n) {
int sum = 0;
while (n) {
sum += n % 10;
n /= 10;
}
return sum;
}
int getNumber(int n) {
for (int i = 0; i <= n; i++)
if (i + getDigitSum(i) == n)
return i;
return -1;
}
int main() {
int n = 21;
cout << "The value of x is: " << getNumber(n);
} आउटपुट
The value of x is: 15