কম্পিউটার

C++ এ ফার্মাটের ছোট্ট উপপাদ্য


ফার্মাটের ছোট্ট উপপাদ্য -

এই উপপাদ্যটি বলে যে কোনো মৌলিক সংখ্যা p,

এর জন্য

A p - p p.

এর একটি গুণিতক

এই বিবৃতিটি মডুলার পাটিগণিত -এ হিসাবে চিহ্নিত করা হয়,

a p ≡ a (mod p)

a যদি p দ্বারা বিভাজ্য না হয় তাহলে,

a p - 1 ≡ 1 (mod p)

এই সমস্যায়, আমাদের দুটি সংখ্যা a এবং p দেওয়া হয়েছে। আমাদের কাজ হল ফারম্যাটের সামান্য উপপাদ্য যাচাই করা এই মানগুলির উপর৷

আমাদের চেক করতে হবে a p কিনা ≡ a (mod p) বা a p - 1 ≡ 1 (mod p)

a এবং p এর প্রদত্ত মানের জন্য সত্য ধরে।

সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,

ইনপুট: a =3, p =7

আউটপুট: সত্য

ব্যাখ্যা:

A p-1 ≡ 1 (mod p)

=> 3 6 ≡ 729

=> 729 - 1 =728

=> 728 / 7 =104

উপাদ্যের কাজ চিত্রিত করার জন্য প্রোগ্রাম,

উদাহরণ

#include <iostream>
#include <math.h>
using namespace std;

int fermatLittle(int a, int p) {
   
   int powVal;
   if(a % p == 0){
     
      powVal = pow(a, p);
      if((powVal - p) % p == 0){
         cout<<"Fermat's little theorem holds true!";
      }
      else{
         cout<<"Fermat's little theorem holds false!";
      }
   }  
   else {
      powVal = pow(a, (p - 1));
      if((powVal - 1) % p == 0 ){
       cout<<"Fermat's little theorem holds true!";
      }
      else{
         cout<<"Fermat's little theorem holds false!";
      }
   }
     
}

int main()
{
   int a = 3, m = 11;
   fermatLittle(a, m);
   return 0;
}

আউটপুট −

Fermat's little theorem holds true!

  1. ভাইজিং এর উপপাদ্য বাস্তবায়নের জন্য C++ প্রোগ্রাম

  2. ফার্ম্যাটের ছোট্ট উপপাদ্য বাস্তবায়নের জন্য C++ প্রোগ্রাম

  3. অয়লার উপপাদ্য বাস্তবায়নের জন্য C++ প্রোগ্রাম

  4. ফার্ম্যাট প্রাইমালিটি টেস্ট করার জন্য C++ প্রোগ্রাম