এখানে আমরা একটি সমস্যা দেখতে পাব, যেখানে আমরা একটি সংখ্যা 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