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

অ্যারের সব উপাদানের গুণফলে ট্রেইলিং জিরোর সংখ্যা গণনা C++-এ


একটি ধনাত্মক পূর্ণসংখ্যার অ্যারে Arr[] দেওয়া আছে যার আকার N। লক্ষ্য হল অ্যারের সব উপাদানের গুণফলে কতগুলো ট্রেইলিং জিরো (পূঁছতে শূন্য) থাকে তা বের করা।

এটি বের করার জন্য প্রতিটি সংখ্যার ২ এবং ৫ হিসেবে ফ্যাক্টর গণনা করা হয়। কারণ ২ × ৫ = ১০ যা একটি ট্রেইলিং জিরো তৈরি করে। শেষে ২ এবং ৫-এর ফ্যাক্টর সংখ্যার যেটি কম হবে, সেটিই ট্রেইলিং জিরোর সংখ্যা হবে। যেমন ৪টি ২ এবং ৬টি ৫ থাকলে ৪টি ট্রেইলিং জিরো হবে।

উদাহরণ

ইনপুট: Arr[] = { 2, 5, 10, 15, 20, 25, 100 }

আউটপুট: ট্রেইলিং জিরোর সংখ্যা: ৬

ব্যাখ্যা: প্রতিটি উপাদানের ২ ও ৫ ফ্যাক্টর গণনা করলে মোট ২ ফ্যাক্টর ৬টি এবং ৫ ফ্যাক্টর ৮টি পাওয়া যায়। কমটি ৬, তাই ৬টি ট্রেইলিং জিরো।

ইনপুট: Arr[] = { 10,10,10,10,10 }

আউটপুট: ট্রেইলিং জিরোর সংখ্যা: ৫

প্রোগ্রামে ব্যবহৃত পদ্ধতি
  • ধনাত্মক পূর্ণসংখ্যার অ্যারে এবং এর দৈর্ঘ্য N নেওয়া হয়।
  • trailZeros(int arr[], int n) ফাংশন অ্যারে ও n নিয়ে ট্রেইলিং জিরোর সংখ্যা রিটার্ন করে।
  • দুটি ভেরিয়েবল twos এবং fives দিয়ে ২ ও ৫ ফ্যাক্টরের কাউন্ট রাখা হয়।
  • অ্যারে ট্রাভার্স করে প্রতিটি উপাদানকে ২ ও ৫ দিয়ে বারবার ভাগ করে ফ্যাক্টর সংখ্যা বেড়ানো হয়।
  • শেষে min(twos, fives) রিটার্ন করা হয়।
C++ কোড উদাহরণ
#include 
using namespace std;

int trailZeros(int arr[], int n){
    int twos = 0, fives = 0;
    for (int i = 0; i < n; i++){
        while(arr[i] % 2 == 0 || arr[i] % 5 == 0){
            if(arr[i] % 2 == 0){
                arr[i] /= 2;
                twos++;
            }
            if(arr[i] % 5 == 0){
                arr[i] /= 5;
                fives++;
            }
        }
    }
    return min(twos, fives);
}

int main(){
    int Arr[] = { 12, 5, 15, 8, 100, 40 };
    int Length = sizeof(Arr)/sizeof(Arr[0]);
    cout << endl << "ট্রেইলিং জিরোর সংখ্যা: " << trailZeros(Arr, Length);
    return 0;
}
আউটপুট

উপরোক্ত কোড রান করলে আউটপুট:

ট্রেইলিং জিরোর সংখ্যা: ৫
  1. সি++-এ আয়তক্ষেত্রে বর্গের সংখ্যা গণনা

  2. C++-এ অ্যারে-তে প্রতিটি K-তম প্রাইম নম্বরের গুণফল

  3. C++-এ সেট বিট কাউন্ট অনুযায়ী অ্যারে সর্ট করা

  4. C++-এ গুণফল অ্যারে পাজল (Product Array Puzzle) সমাধান