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

C++ দিয়ে n!-এ প্রাইম নাম্বার p-এর পাওয়ার (Power) বের করা


এই সমস্যাতে, আমাদের একটি সংখ্যা n এবং একটি প্রাইম নাম্বার p দেওয়া আছে। আমাদের কাজ হল n!-এ প্রাইম নাম্বার p-এর পাওয়ার (Power) বের করা।

উদাহরণ দেখি:

ইনপুট : n = 6, p = 2 আউটপুট : 4

সমাধানের পদ্ধতি

একটি সহজ সমাধান হল সরাসরি n!-এর মান বের করা। এবং তারপর ফ্যাক্টরাইজ করে প্রাইম নাম্বার p-এর পাওয়ার বের করা।

এখানে, সংখ্যাটিকে ৫! = ৩০-এ ২-এর পাওয়ার ফ্যাক্টরাইজেশন হিসেবে প্রকাশ করা হয়েছে যা ৩।

n ফ্যাক্টোরিয়ালের মান হল

$$n!\:=\:n^*(n-1)^*(n-2)^*(n-3)\dotso{^*}2^*1$$ 

$$n!\:=\:3^*2^*1\:=\:6$$

ধরি n = 6 এবং p = 2,

n! = 6! = (2*3*4*5*6)

n! = 720

৭২০-এর ফ্যাক্টরাইজেশন হল 2*2*2*2*3*3*5

৬!-এর ফ্যাক্টরাইজেশনে ২-এর পাওয়ার হল ৪।

সুতরাং আউটপুট হল ৪।

উদাহরণ

#include <iostream> using namespace std; int powerOfPrimeNfactorial(int N, int P){ int primePower = 0; int factVal = P; while (factVal <= N) { primePower += N / factVal; factVal = factVal * P; } return primePower; } int main(){ int N = 6; int P = 2; cout<<"The power of prime number "<<P<<" in "<<N<<"! is "<<powerOfPrimeNfactorial(N, P) << endl; return 0; }

আউটপুট

The power of prime number 2 in 6! is 4 

  1. C++ প্রোগ্রাম: ফুল প্রাইম (Full Prime) চেক করা

  2. C++ প্রোগ্রাম: সংখ্যা অন্য একটি সংখ্যার পাওয়ার কিনা চেক করা

  3. C++ প্রোগ্রাম: একটি সংখ্যা ২-এর পাওয়ার কিনা তা চেক করা

  4. সংখ্যার ঘাত (Power) বের করার C++ প্রোগ্রাম (রিকার্সিভ ও নন-রিকার্সিভ)