কম্পিউটার টিউটোরিয়াল

দেওয়া সংখ্যা n-এর জন্য x + x-এর অঙ্কের যোগফল = n এমন x খুঁজে বের করা C++-এ

এখানে আমরা একটি সমস্যা দেখব, যেখানে একটি সংখ্যা n দেওয়া থাকলে, আমাদের একটি অন্য মান x খুঁজে বের করতে হবে, যাতে x এবং x-এর অঙ্কের যোগফলের সমষ্টি n-এর সমান হয়। উদাহরণস্বরূপ, n = 21 হলে, প্রোগ্রামটি x = ১৫ রিটার্ন করবে, কারণ ১৫ + (১ + ৫) = ২১ = n।

সমাধানের পদ্ধতি

এই সমস্যাটি সমাধান করতে আমরা একটি সাধারণ পদ্ধতি অনুসরণ করব। ১ থেকে 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);
    return 0;
}

আউটপুট

The value of x is: 15
  1. সি++ প্রোগ্রাম: সংখ্যা বিভাজ্য করে এমন অঙ্কগুলোর গণনা (Count of Digits Dividing the Number)

  2. C++ ব্যবহার করে অ্যারেতে বাম ও ডান পাশের যোগফল সমান হয় এমন এলিমেন্ট বের করা

  3. C++ ব্যবহার করে এমন একটি সংখ্যা x বের করা যাতে x এবং তার ডিজিটের যোগফল n-র সমান হয়

  4. পাইথনে A-দ্বারা বিভাজ্য এবং অঙ্কের যোগফল B হয় এমন ন্যূনতম ধনাত্মক পূর্ণসংখ্যা