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

C++ प्रोग्राम: फर्मेट अभाज्यता परीक्षण करना


फर्मेट अभाज्यता परीक्षण यह जांचने के लिए किया जाता है कि दी गई संख्या अभाज्य है या नहीं। यहां इस एल्गोरिदम का C++ कोड दिया गया है।

एल्गोरिदम

शुरुआत    मोड्यूलो(आधार, घात, मॉड)    a = 1    b = आधार    जब तक (घात > 0)       यदि (घात मॉड 2 == 1)          a = (a * b) % मॉड          b = (b * b) % मॉड          घात = घात / 2       वापस a % मॉड अंत शुरुआत    फर्मेट(ll m, इंटरेशन)    यदि (m == 1)       वापस गलत    हो गया    लिए (int i = 0; i < इंटरेशन; i++)       ll x = रैंड() मॉड (m - 1) + 1       यदि (मोड्यूलो(x, m - 1, m) != 1)          वापस गलत       हो गया    वापस सच अंत

उदाहरण कोड

#include <cstring> #include <iostream> #include <cstdlib> #define ll long long using namespace std; ll modulo(ll base, ll e, ll mod) {    ll a = 1;    ll b = base;    while (e > 0) {       if (e % 2 == 1)          a = (a * b) % mod;          b = (b * b) % mod;          e = e / 2;    }    return a % mod; } bool Fermat(ll m, int iterations) {    if (m == 1) {       return false;    }    for (int i = 0; i < iterations; i++) {       ll x = rand() % (m - 1) + 1;       if (modulo(x, m - 1, m) != 1) {          return false;       }    }    return true; } int main() {    int iteration = 70;    ll num;    cout<<"अभाज्यता जांचने के लिए पूर्णांक दर्ज करें: ";    cin>>num;    if (Fermat(num, iteration))       cout<<num<<" अभाज्य है"<<endl;    else       cout<<num<<" अभाज्य नहीं है"<<endl;    return 0; }

आउटपुट

अभाज्यता जांचने के लिए पूर्णांक दर्ज करें: 13 अभाज्य है

  1. - C++ प्रोग्राम: किसी भी मैट्रिक्स का LU अपघटन

    LU अपघटन क्या है? LU अपघटन एक मैट्रिक्स को निचले त्रिकोणीय मैट्रिक्स (L) और ऊपरी त्रिकोणीय मैट्रिक्स (U) के गुणनफल के रूप में व्यक्त करता है। LU का अर्थ है Lower-Upper। उदाहरण दिया गया मैट्रिक्स: 1 1 0 2 1 3 3 1 1 L मैट्रिक्स: 1 0 0 2 -1 0 3 -2 -5 U मैट्रिक्स: 1 1 0 0 1 -3 0 0 1 C++ प्रोग्राम उ

  1. - C++ प्रोग्राम: सम्मिश्र संख्या गुणन

    सम्मिश्र संख्याएं सम्मिश्र संख्याएं a+bi के रूप में व्यक्त की जाती हैं, जहां i काल्पनिक इकाई है (i² = -1) और a, b वास्तविक संख्याएं हैं। उदाहरण 2+3i, 5+9i, 4+2i गुणन सूत्र (a+bi) × (c+di) = (ac - bd) + (ad + bc)i C++ प्रोग्राम उदाहरण #include <iostream> using namespace std; int main() {

  1. - C++ में मैट्रिक्स गुणा करने का प्रोग्राम

    मैट्रिक्स संख्याओं का एक आयताकार सरणी है जो पंक्तियों और कॉलम के रूप में व्यवस्थित होता है। मैट्रिक्स का एक उदाहरण निम्नलिखित है। एक 3*2 मैट्रिक्स में 3 पंक्तियाँ और 2 कॉलम होते हैं जैसा कि नीचे दिखाया गया है: 8 1 4 9 5 6 मैट्रिक्स गुणा करने का एक प्रोग्राम निम्नलिखित है। उदाहरण #include<iostream