Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में Fermat की छोटी प्रमेय

फ़र्मेट की छोटी प्रमेय -

यह प्रमेय बताता है कि किसी भी अभाज्य संख्या p के लिए,

p - पी p का ​​गुणज है।

मॉड्यूलर अंकगणित . में यह कथन के रूप में दर्शाया गया है,

a p ≡ ए (मॉड पी)

यदि a, p से विभाज्य नहीं है तो,

a p - 1 1 (मॉड पी)

इस समस्या में, हमें दो संख्याएँ a और p दिए गए हैं। हमारा काम फर्मेट की छोटी प्रमेय . को सत्यापित करना है इन मूल्यों पर।

हमें यह जांचना होगा कि क्या a p ≡ a (mod p) या a p - 1 1 (मॉड पी)

a और p के दिए गए मानों के लिए सही है।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

इनपुट: ए =3, पी =7

आउटपुट: सच

स्पष्टीकरण:

p-1 ≡ 1 (मॉड पी)

=> 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. सी ++ प्रोग्राम फर्मेट के छोटे प्रमेय को लागू करने के लिए

    फ़र्मेट की छोटी प्रमेय प्राथमिक संख्या सिद्धांत के मूलभूत परिणामों में से एक है और फ़र्मेट प्रारंभिक परीक्षण का आधार है। प्रमेय का नाम पियरे डी फ़र्मेट के नाम पर रखा गया है, जिन्होंने इसे 1640 में कहा था। प्रमेय कहता है कि यदि p एक अभाज्य संख्या है, तो किसी भी पूर्णांक a के लिए, संख्या a p–a, p का ए

  1. यूलर प्रमेय को लागू करने के लिए सी ++ कार्यक्रम

    यह एक C++ प्रोग्राम है जो यूलर प्रमेय के कार्यान्वयन को प्रदर्शित करता है। मॉड्यूलर गुणक व्युत्क्रम मौजूद होने के लिए संख्या और मॉड्यूलर को अभाज्य होना चाहिए। एल्गोरिदम Begin Take input to find modular multiplicative inverse Take input as modular value Perform inverse array function: mod

  1. सी ++ प्रोग्राम फर्मेट प्राइमलिटी टेस्ट करने के लिए

    फ़र्मेट प्राइमलिटी टेस्ट यह जांचने के लिए करता है कि दी गई संख्या अभाज्य है या नहीं। यहाँ इस एल्गोरिथम का C++ कोड दिया गया है। एल्गोरिदम Begin    modulo(base, e, mod)    a = 1    b = base    while (e > 0)       if (e mod 2 == 1)