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

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

একটি নম্বর n দেওয়া থাকলে আমাদের চেক করতে হবে তার ডিজিটগুলোর যোগফল নম্বর n কে ভাগ করে দেয় কিনা। এর জন্য আমাদের ইউনিট প্লেস থেকে সব নম্বর যোগ করে ফাইনাল সাম পাওয়া যাবে এবং নম্বরটিকে সেটি দিয়ে ভাগ করতে হবে।

যেমন "521" নম্বর থাকলে এর ডিজিটগুলোর যোগফল হবে "5 + 2 + 1 = 8" কিন্তু 521, ৮ দিয়ে ভাগ হয় না কোনো রিমাইন্ডার ছাড়া।

আরেকটা উদাহরণ নিই "60" যেখানে "6+0 = 6" যা 60 কে ভাগ করতে পারে এবং কোনো রিমাইন্ডার ছাড়া।

উদাহরণ

ইনপুট: 55 আউটপুট: No
ব্যাখ্যা: 5+5 = 10; 55, 10 দিয়ে বিভাজ্য নয়
ইনপুট: 12 আউটপুট: Yes
ব্যাখ্যা: 1+2 = 3; 12, 3 দিয়ে বিভাজ্য

নিচে ব্যবহৃত পদ্ধতি −

এই সমস্যা সমাধানের জন্য আমাদের ইনপুট থেকে প্রতিটি ডিজিট বের করে নম্বরের ডিজিটগুলোর যোগফল বের করতে হবে, তারপর চেক করতে হবে সেটি নম্বরটি ভাগ করছে কিনা।

  • ইনপুট নেওয়া
  • ইউনিট প্লেস থেকে প্রতিটি নম্বর বের করে যোগফল ভেরিয়েবলে যোগ করা (শুরুতে শূন্য)
  • ইনপুটকে নম্বরের যোগফল দিয়ে ভাগ করা।
  • রেজাল্ট রিটার্ন করা।

অ্যালগরিদম

function int isDivisible(long int num) এ
  ধাপ ১ → temp = num, sum = 0 ডিক্লেয়ার ও ইনিশিয়ালাইজ
  ধাপ ২ → লুপ While num
    k = num % 10 ডিক্লেয়ার ও ইনিশিয়ালাইজ
    sum = sum + k সেট
    num = num / 10 সেট
  End Loop
  ধাপ ৩ → If temp % sum == 0 then,
    Return 1
  ধাপ ৪ → Return 0
  End function
main() এ
  ধাপ ১ → num = 55 ডিক্লেয়ার ও ইনিশিয়ালাইজ
  ধাপ ২ → If isDivisible(num) then,
    Print "yes "
  ধাপ ৩ → Else Print "no "

উদাহরণ

#include <stdio.h>
// এই ফাংশন চেক করবে
// দেওয়া নম্বর তার ডিজিটগুলোর যোগফল দিয়ে
// বিভাজ্য কিনা
int isDivisible(long int num) {
    long int temp = num;
    // ডিজিটগুলোর যোগফল বের করা
    int sum = 0;
    while (num) {
        int k = num % 10;
        sum = sum + k;
        num = num / 10;
    }
    // চেক করা যোগফল num কে ভাগ করে কিনা
    if (temp % sum == 0)
        return 1;
    return 0;
}
int main() {
    long int num = 55;
    if(isDivisible(num))
        printf("yes\n");
    else
        printf("no\n");
    return 0;
}

আউটপুট

উপরের কোড রান করলে নিচের আউটপুট জেনারেট হবে −

No

  1. PHP প্রোগ্রাম: একটি সংখ্যার অঙ্কগুলোর যোগফল বের করা

  2. C# প্রোগ্রাম: একটি সংখ্যা ২ দিয়ে বিভাজ্য কিনা যাচাই করা

  3. Python-এ সংখ্যার অড প্লেসের ডিজিটগুলোর যোগফল K দিয়ে বিভাজ্য কিনা যাচাই করা

  4. পাইথনে দিয়ে गये সংখ্যার সব ডিজিটের যোগফল বের করার প্রোগ্রাম