আমাদেরকে একটি অ্যারে দেওয়া হয়েছে, ধরা যাক যে কোনো প্রদত্ত আকারের পূর্ণসংখ্যা উপাদানগুলির arr[] এবং কাজটি হল সমস্ত অ্যারের উপাদানগুলিকে গুণ করে গণনা করা একটি সংখ্যার গুণনীয়ক গণনা করা।
এক ধরণের ডেটা স্ট্রাকচার অ্যারে করে যা একই ধরণের উপাদানগুলির একটি নির্দিষ্ট-আকারের অনুক্রমিক সংগ্রহ সঞ্চয় করতে পারে। একটি অ্যারে ডেটা সংগ্রহের জন্য ব্যবহার করা হয়, তবে একই ধরণের ভেরিয়েবলের সংগ্রহ হিসাবে একটি অ্যারেকে ভাবতে প্রায়ই এটি বেশি কার্যকর।
উদাহরণস্বরূপ
Input − int arr[] = {2, 3} Output − count is 4
ব্যাখ্যা − অ্যারের গুণফল 2 * 3 হল 6 এবং 6-এর গুণনীয়ক হল 1, 2, 3, 6। সুতরাং মোট 6-এর 4টি গুণনীয়ক রয়েছে।
Input − int arr[] = {2, 3, 5} Output − count is 8
ব্যাখ্যা − অ্যারের গুণিতক হল 2 * 3 * 5 হল 30 এবং 30-এর গুণনীয়ক হল 1, 2, 3, 5, 6, 10, 15, 30৷ সুতরাং মোট 30টির 8টি গুণনীয়ক৷
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
একটি অ্যারে তৈরি করুন চলুন বলি, আরার[]
-
length() ফাংশন ব্যবহার করে একটি অ্যারের দৈর্ঘ্য গণনা করুন যা একটি অ্যারের উপাদান অনুযায়ী একটি পূর্ণসংখ্যা মান প্রদান করবে।
-
একটি অস্থায়ী পরিবর্তনশীল ঘোষণা করা যাক, টেম্প এটিকে 1
সেট করুন -
i থেকে 0 এবং i অ্যারের আকারের চেয়ে কম
এর জন্য লুপ শুরু করুন -
temp * =arr[i]
এ টেম্প সেট করুন -
অন্য একটি ফাংশন কল করুন যা একটি গণনা প্রদান করবে।
-
একটি অস্থায়ী পরিবর্তনশীল নিন যা উপাদানের গণনা সংরক্ষণ করবে।
-
i থেকে 1 এবং i কম এর সমান mul এর জন্য লুপ শুরু করুন।
-
লুপের ভিতরে, temp % i =0 কিনা তা পরীক্ষা করুন তারপর গণনার মান 1 দ্বারা বৃদ্ধি করুন।
-
গণনা ফেরত দিন
-
ফলাফল প্রিন্ট করুন।
উদাহরণ
#include <iostream> using namespace std; // Function to count number of factors int divisors(int N){ // Initialize result with 0 int result = 0; // Increment result for every factor // of the given number N. for (int i = 1; i <= N; ++i){ if (N % i == 0){ result++; } } return result; } int countmultiples(int arr_1[], int size){ // To multiply all elements of // the given array. int temp = 1; for (int i = 0; i < size; ++i){ temp *= arr_1[i]; } return divisors(temp); } // main function int main(){ int arr_1[] = { 5, 10, 15 }; int size = sizeof(arr_1) / sizeof(arr_1[0]); cout <<"count is "<<countmultiples(arr_1, size); return 0; }
আউটপুট
আমরা উপরের কোডটি চালালে আমরা নিম্নলিখিত আউটপুট পাব −
count is 16