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

C++ में बड़ी संख्या 13 से विभाज्य है या नहीं जांचें


13 से विभाज्यता के नियम

  1. ब्लॉक विधि: दाएं से बाएं 3-3 अंकों के ब्लॉक का वैकल्पिक योग 13 से विभाज्य हो
  2. अंकीय विधि: अंतिम अंक × 4 को शेष संख्या में जोड़ें, दोहराएं

उदाहरण (अंकीय): 2353 → 235+3×4=247 → 24+7×4=52 → 52÷13=4 → विभाज्य

उदाहरण कोड (ब्लॉक विधि)

#include <bits/stdc++.h>
using namespace std;

bool isDiv13(string num) {
    int len = num.size();
    if (len == 1 && num[0] == '0') return true;
    
    // लंबाई 3 का गुणक बनाएं
    if (len % 3 == 1) { num += "00"; len += 2; }
    else if (len % 3 == 2) { num += "0"; len += 1; }
    
    int sum = 0, p = 1;
    for (int i = len - 1; i >= 0; i--) {
        int block = 0;
        block += (num[i--] - '0');
        block += (num[i--] - '0') * 10;
        block += (num[i] - '0') * 100;
        sum += block * p;
        p *= -1;
    }
    sum = abs(sum);
    return (sum % 13 == 0);
}

int main() {
    string num = "83959092724";
    if (isDiv13(num)) cout << "Divisible";
    else cout << "Not Divisible";
    return 0;
}

आउटपुट

Divisible
  1. - C++ में बड़ी संख्या की 15 से विभाज्यता जांचें

    यहां हम देखेंगे कि कैसे जांचें कि कोई संख्या 15 से विभाज्य है या नहीं। इस मामले में संख्या बहुत बड़ी है। इसलिए हम संख्या को स्ट्रिंग के रूप में रखते हैं। यह जांचने के लिए कि कोई संख्या 15 से विभाज्य है या नहीं, यदि संख्या 5 से विभाज्य है, और 3 से विभाज्य है। 5 से विभाज्यता जांचने के लिए, हमें देखना

  1. - पायथन में जांचें कि कोई बड़ी संख्या 19 से विभाज्य है या नहीं

    मान लीजिए हमें एक बड़ी संख्या दी गई है और हमें यह जांचना है कि वह संख्या 19 से विभाज्य है या नहीं। उदाहरण के लिए, यदि इनपुट 86982 है, तो आउटपुट विभाज्य होगा। समाधान दृष्टिकोण हम इस समस्या को पुनरावृत्ति योग विधि (repeated addition method) का उपयोग करके हल करेंगे। इस विधि में हम संख्या के अंतिम अंक

  1. - पायथन में जांचें कि कोई बड़ी संख्या 17 से विभाज्य है या नहीं

    मान लीजिए हमें एक संख्या दी गई है और हमें यह जांचना है कि वह संख्या 17 से विभाज्य है या नहीं। उदाहरण के लिए, यदि इनपुट 99943 है, तो आउटपुट विभाज्य होगा। समाधान दृष्टिकोण हम इस समस्या को पुनरावृत्ति घटाव विधि (repeated subtraction method) का उपयोग करके हल करेंगे। इस विधि में हम संख्या के अंतिम अंक