এই বিভাগে আমরা দেখব কীভাবে আমরা একটি সংখ্যার সমস্ত জোড় মৌলিক গুণনীয়কের যোগফল একটি কার্যকর উপায়ে পেতে পারি। n =480 বলে একটি সংখ্যা আছে, আমাদের এটির সমস্ত গুণনীয়ক পেতে হবে। 480-এর মৌলিক গুণনীয়ক হল 2, 2, 2, 2, 2, 3, 5। সমস্ত জোড় গুণনীয়কের যোগফল হল 2+2+2+2+2 =10। এই সমস্যা সমাধানের জন্য আমাদের এই নিয়মটি অনুসরণ করতে হবে। −
-
যখন সংখ্যাটি 2 দ্বারা বিভাজ্য হয়, তখন তাদের যোগফলের সাথে যোগ করুন এবং সংখ্যাটিকে বারবার 2 দ্বারা ভাগ করুন৷
-
এখন সংখ্যাটি বিজোড় হতে হবে। তাই আমরা এমন কোন ফ্যাক্টর খুঁজে পাব না যা জোড়। তারপর কেবল সেই কারণগুলিকে উপেক্ষা করুন৷
৷
আসুন আরও ভাল ধারণা পেতে অ্যালগরিদম দেখি।
অ্যালগরিদম
printPrimeFactors(n)
begin sum := 0 while n is divisible by 2, do sum := sum + 2 n := n / 2 done end
উদাহরণ
#include<iostream> using namespace std; int sumEvenFactors(int n){ int i, sum = 0; while(n % 2 == 0){ sum += 2; n = n/2; //reduce n by dividing this by 2 } return sum; } main() { int n; cout << "Enter a number: "; cin >> n; cout << "Sum of all even prime factors: "<< sumEvenFactors(n); }
আউটপুট
Enter a number: 480 Sum of all even prime factors: 10