আমাদের দুটি সংখ্যা দেওয়া হয়েছে আসুন x এবং y বলি এবং কাজটি দুটি সংখ্যার মধ্যে সাধারণ মৌলিক গুণনীয়কগুলি খুঁজে বের করা। সাধারণ মৌলিক গুণনীয়কগুলি প্রথমে দুটি সংখ্যার মধ্যে সাধারণ সংখ্যা গণনা করে এবং তারপরে সাধারণ গুণনীয়কগুলির তালিকা থেকে যাচাই করে যেটি মৌলিক সংখ্যা তা খুঁজে পাওয়া যেতে পারে।
উদাহরণস্বরূপ
Input − x = 10 y = 20 Output − Common prime factor of two numbers are: 2 5
ব্যাখ্যা − 10 এবং 20 এর মধ্যে সাধারণ মৌলিক গুণনীয়কগুলি হল 2 এবং 5 শুধুমাত্র৷
৷Input − x = 34 y = 12 Output − Common prime factor of two numbers are: 2
ব্যাখ্যা − 34 এবং 12 এর মধ্যে সাধারণ মৌলিক গুণনীয়ক হল 2৷
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
x এবং y দুটি সংখ্যার মান ইনপুট করুন।
-
একটি ফাংশন তৈরি করুন এবং একটি ফাংশনের ভিতরে
-
একটি অস্থায়ী পরিবর্তনশীল ঘোষণা করুন যা xand y
সংখ্যার সর্বশ্রেষ্ঠ সাধারণ ভাজক হবে -
2 থেকে শুরু করে একটি লুপ তৈরি করুন যতক্ষণ না এটি GCD-এর থেকে কম বা সমান হয় এবং i
-
লুপের ভিতরে prime[i] &&GCD%i =0 কিনা এবং এটি সত্য কিনা তা পরীক্ষা করুন
-
i
এর মান প্রিন্ট করুন -
ফলাফল প্রিন্ট করুন
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
#define MAX 100001
bool prime[MAX];
void SieveOfEratosthenes(){
// Create a boolean array "prime[0..n]" and initialize
// all entries are true. A value in prime[i] will
// finally be false if i is Not a prime, else true.
memset(prime, true, sizeof(prime));
// 0 and 1 are not prime numbers
prime[0] = false;
prime[1] = false;
for (int p = 2; p * p <= MAX; p++){
// If prime[p] is not changed, then it is a prime
if (prime[p] == true){
// Updating all multiples of p as non-prime
for (int i = p * p; i <= MAX; i += p){
prime[i] = false;
}
}
}
}
// Function to find the common prime numbers
void common_prime(int x, int y){
// Obtain the GCD of the given numbers
int g = __gcd(x, y);
// Find the prime divisors of the g
for (int i = 2; i <= (g); i++){
// If i is prime and divisor of g
if (prime[i] && g % i == 0){
cout << i << " ";
}
}
}
// main code
int main(){
// Creating the Sieve
SieveOfEratosthenes();
int x = 20, y = 30;
cout<<"Common prime factor of two numbers are: ";
common_prime(x, y);
return 0;
} আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেCommon prime factor of two numbers are: 2 5