এখানে আমরা একটি সমস্যা দেখব, যেখানে একটি সংখ্যা n দেওয়া আছে, আমাদের একটি অন্য মান x বের করতে হবে যাতে x + x-এর ডিজিটের যোগফল = n হয়। ধরি n = 21। এই প্রোগ্রাম x = 15 রিটার্ন করবে, কারণ 15 + 15-এর ডিজিট সমষ্টি (1+5) = 21 = n।
এটি সমাধান করতে সাধারণ পদ্ধতি ফলো করতে হবে। 1 থেকে n পর্যন্ত ইটারেট করব, প্রতিটি ইটারেশনে দেখব যদি সংখ্যা এবং তার ডিজিট সমষ্টির যোগফল 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