আমাদের সংখ্যার অ্যারে দেওয়া হয়েছে৷ লক্ষ্য হল সেই অ্যারেতে মৌলিক সংখ্যার গণনা করা।
একটি মৌলিক সংখ্যা হল একটি যা 1 দ্বারা বিভাজ্য এবং সংখ্যাটি নিজেই। এটা শুধুমাত্র দুটি কারণ আছে. আমরা প্রথম উপাদান থেকে শেষ পর্যন্ত সংখ্যাটি প্রাইম কিনা তা পরীক্ষা করব এবং এ পর্যন্ত পাওয়া মৌলিক সংখ্যার সংখ্যা বৃদ্ধি করব।
N সংখ্যাটি প্রাইম কিনা তা পরীক্ষা করতে, পরিসর [2 থেকে N/2] এর মধ্যে সংখ্যাগুলি সম্পূর্ণরূপে N কে ভাগ করে কিনা তা পরীক্ষা করুন। যদি হ্যাঁ হয় তবে এটি অ-প্রাইম। অন্যথায় এটি প্রধান।
উদাহরণ দিয়ে বোঝা যাক।
ইনপুট − arr[]={ 1,2,3,4,5,6,7,8,9 }
আউটপুট − মৌলিক সংখ্যার সংখ্যা − 4
ব্যাখ্যা − এখানে 2,3,5,7 হল প্রাইম এবং 1,4,6,8,9 হল নন-প্রাইম৷
ইনপুট − arr[]={ 11,12,4,61,23 }
আউটপুট − মৌলিক সংখ্যার সংখ্যা − 3
ব্যাখ্যা − এখানে 11,61,23টি প্রাইম এবং 12,4টি নন-প্রাইম৷
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
আমরা একটি পূর্ণসংখ্যা অ্যারে অ্যারে নিই[] যাতে এলোমেলো সংখ্যা থাকে।
-
ফাংশন checkPrime(int num) পরীক্ষা করে যে পাস করা নম্বরটি প্রাইম কিনা। যদি এটি প্রাইম হয়, এটি 1 প্রদান করে অন্যথায় এটি 0 প্রদান করে।
-
যদি সংখ্যাটি <=1 হয় তবে এটি নন প্রাইম, 0 ফেরত দিন।
-
এখন 2 থেকে num/2 থেকে শুরু করে যদি কোনো সংখ্যা num ( num%i==0) কে সম্পূর্ণভাবে ভাগ করে তাহলে num হল নন-প্রাইম, রিটার্ন 0।
-
অন্যথায় রিটার্ন 1.
-
ভেরিয়েবল isprime বলে যে সংখ্যা মৌলিক কি না ( 1 মানে মৌলিক)
-
পরিবর্তনশীল গণনা arr[>
এ প্রাইম সংখ্যা সংরক্ষণ করে -
মূল ট্রাভার্স পুরো অ্যারের ভিতরে এবং প্রতিটি উপাদান arr[i] কে প্রাইম( arr[i]) চেক করতে পাস করুন, যদি এর ফলাফল 1 ( isprime==1 ) হয় তাহলে সংখ্যা বৃদ্ধি করুন।
-
শেষে গণনা হল arr[>
এ প্রাইম সংখ্যা
উদাহরণ
#include <bits/stdc++.h> using namespace std; // Function to find if number is prime int checkPrime(int num){ if (num <= 1) { return 0; } // Check from 2 to half of arr[i] for (int j = 2; j <= num/2; j++){ if (num % j == 0){ return 0; } return 1; } } int main(){ int arr[] = { 1,3,5,4,8,13,11 }; int n = 7; int count=0; int isprime=0; for(int i=0;i<n;i++){ isprime=checkPrime(arr[i]); if(isprime==1) count++; } cout<<"Count of number of primes in array : "<<count; return 0; }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেCount of number of primes in array : 4