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

C++-এ অ্যারের সব ডিজিট ব্যবহার করে ৩ দিয়ে বিভাজ্য সংখ্যা বানানো সম্ভব কিনা


এই সমস্যাতে, একটি অ্যারে দেওয়া আছে। আমাদের কাজ হলো চেক করা অ্যারের সব উপাদানের ডিজিট ব্যবহার করে একটি সংখ্যা বানানো যা ৩ দিয়ে বিভাজ্য। যদি সম্ভব হয় তবে "Yes" প্রিন্ট করা অন্যথায় "No"।

উদাহরণ:

ইনপুট - arr = {3, 5, 91}

আউটপুট - YES

ব্যাখ্যা - সংখ্যা 5193, ৩ দিয়ে বিভাজ্য। তাই উত্তর YES।

সমাধানের জন্য, আমরা ৩ দিয়ে বিভাজ্যতা চেক করব।

৩ দিয়ে বিভাজ্যতা - একটি সংখ্যা ৩ দিয়ে বিভাজ্য হয় যদি এর ডিজিটগুলোর যোগফল ৩ দিয়ে বিভাজ্য হয়।

এখন, আমাদের সব অ্যারে এলিমেন্টের যোগফল বের করতে হবে। যদি এই যোগফল ৩ দিয়ে বিভাজ্য হয়, তবে সম্ভব এবং YES প্রিন্ট করব, অন্যথায় No।

উদাহরণ

সমাধানের প্রোগ্রাম:

#include <iostream> 
using namespace std; 

bool is3DivisibleArray(int arr[]) {
    int n = sizeof(arr) / sizeof(arr[0]);
    int rem = 0;
    for (int i = 0; i < n; i++)
        rem = (rem + arr[i]) % 3;
    return (rem == 0);
}

int main() {
    int arr[] = { 23, 64, 87, 12, 9 };
    cout << "Creating a number from digits of array which is divisible by 3 ";
    is3DivisibleArray(arr) ? cout << "is Possible" : cout << "is not Possible";
    return 0;
}

আউটপুট

Creating a number from digits of array which is divisible by 3 is Possible

  1. C++ তে অ্যারে রিপ্রেজেন্টেড সংখ্যার সাথে ১ যোগ করা

  2. C++ STL ব্যবহার করে অ্যারের সব রিভার্স পারমুটেশন (All Reverse Permutations)

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

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