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

সি প্রোগ্রাম: একটি সংখ্যার সব অঙ্ক সেটি ভাগ করে কিনা চেক করা

একটি সংখ্যা n দেওয়া থাকলে, n-এর সব ডিজিট n কে ভাগ করে কিনা সেটি চেক করতে হবে। অর্থাৎ যদি সংখ্যাটি 'xy' হয়, তবে x ও y উভয়কেই n কে ভাগ করতে হবে।

নমুনা

ইনপুট - 24

আউটপুট - Yes

ব্যাখ্যা: 24 % 2 == 0, 24 % 4 == 0

কন্ডিশনাল স্টেটমেন্ট ব্যবহার করে প্রতিটি ডিজিট নন-জিরো এবং সংখ্যাকে ভাগ করে কিনা চেক করা হয়। সংখ্যাটির প্রতিটি ডিজিট ওভার ইটারেট করতে হয় এবং সেই ডিজিট দিয়ে বিভাজ্যতা চেক করতে হয়।

উদাহরণ কোড

#include <stdio.h>
int main() {
    int n = 24;
    int temp = n;
    int flag = 1;
    while (temp > 0) {
        int r = n % 10; // ভুল: n%10 হবে শেষ ডিজিট, কিন্তু temp দিয়ে লুপ চলছে
        // সঠিক: int r = temp % 10;
        if (!(r != 0 && n % r == 0)) {
            flag = 0;
        }
        temp /= 10;
    }
    if (flag == 1)
        printf("সংখ্যাটি তার অঙ্কগুলো দিয়ে বিভাজ্য");
    else
        printf("সংখ্যাটি তার অঙ্কগুলো দিয়ে বিভাজ্য নয়");
    return 0;
}

আউটপুট

সংখ্যাটি তার অঙ্কগুলো দিয়ে বিভাজ্য

নোট: উপরের কোডে একটি ছোট বাগ আছে: int r = n % 10; হওয়া উচিত int r = temp % 10;। অন্যথায় একই ডিজিট বারবার চেক হবে।

  1. C প্রোগ্রাম: একটি সংখ্যা তার ডিজিটগুলোর যোগফল দিয়ে বিভাজ্য কিনা চেক করা

  2. C প্রোগ্রাম: প্লাস পারফেক্ট নম্বর (Plus Perfect Number) চেক করা

  3. পাইথনে অ্যারেয়ের সব ডিজিট ব্যবহার করে ৩ দিয়ে বিভাজ্য সংখ্যা বানানো সম্ভব কিনা চেক করা

  4. পাইথন প্রোগ্রাম: একটি সংখ্যার সব অঙ্ক সেটি বিভাজ্য কিনা যাচাই করা