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

C++-এ সংখ্যার ডিজিটের যোগফল একক ডিজিট হয়ে যাওয়া পর্যন্ত বের করা

এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখব যা দেওয়া সংখ্যার ডিজিটগুলো যোগ করবে যতক্ষণ না সেটি একক ডিজিট হয়ে যায়। একটি উদাহরণ দেখি।

ইনপুট - 4543

আউটপুট - 7

সমস্যাটি সমাধানের ধাপগুলো:

  • একটি সংখ্যা ইনিশিয়ালাইজ করুন।
  • সমকে ০ ইনিশিয়ালাইজ করুন।
  • সম ৯-এর চেয়ে ছোট হলে পর্যন্ত ইটারেট করুন।
    • মডুলো অপারেটর ব্যবহার করে সংখ্যার প্রতিটি ডিজিট সমে যোগ করুন।
  • সম প্রিন্ট করুন।

উদাহরণ

কোডটি দেখি।

#include <bits/stdc++.h>
using namespace std;

void findTheSingleDigit(int n) {
    int sum = 0;
    while (n > 0 || sum > 9) {
        if (n == 0) {
            n = sum;
            sum = 0;
        }
        sum += n % 10;
        n /= 10;
    }
    cout << sum << endl;
}

int main() {
    int n = 4543;
    findTheSingleDigit(n);
    return 0;
}

আউটপুট

7

এই সমস্যা সমাধানের আরেকটি সহজ পদ্ধতি আছে। যদি দেওয়া সংখ্যা ৯ দ্বারা ভাগযোগ্য হয়, তবে উত্তর ৯। অন্যথায় উত্তর n % 9।

উদাহরণ

কোডটি দেখি।

#include <bits/stdc++.h>
using namespace std;

void findTheSingleDigit(int n) {
    if (n == 0) {
        cout << 0;
    } else if (n % 9 == 0) {
        cout << 9 << endl;
    } else {
        cout << n % 9 << endl;
    }
}

int main() {
    int n = 4543;
    findTheSingleDigit(n);
    return 0;
}

আউটপুট

7

উপসংহার

টিউটোরিয়ালে যদি কোনো প্রশ্ন থাকে, তবে কমেন্ট সেকশনে জানান।

  1. C++ প্রোগ্রাম: সংখ্যার ডিজিট যোগফল একক ডিজিট হয় পর্যন্ত

  2. C প্রোগ্রাম: একক স্টেটমেন্টে দত্তক সংখ্যার অঙ্কগুলোর যোগফল বের করা

  3. C++-এ দেওয়া সংখ্যার ডিজিটগুলোর যোগফল বের করা

  4. পাইথনে অঙ্ক যোগফল এক অঙ্ক হয় পর্যন্ত করার প্রোগ্রাম