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

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

मान लीजिए हमें एक संख्या दी गई है और हमें यह जांचना है कि वह संख्या 17 से विभाज्य है या नहीं।

उदाहरण के लिए, यदि इनपुट 99943 है, तो आउटपुट "विभाज्य" होगा।

समाधान दृष्टिकोण

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

एल्गोरिदम चरण:

  1. जब तक संख्या 100 से बड़ी या बराबर है (यानी तीन या अधिक अंकों की है):
    • last_digit = number % 10 (अंतिम अंक प्राप्त करें)
    • number //= 10 (अंतिम अंक को हटाएं)
    • number -= last_digit * 5 (अंतिम अंक को 5 से गुणा करके शेष संख्या में से घटाएं)
  2. अंत में जांचें कि क्या संख्या 17 से विभाज्य है: number % 17 == 0

पायथन कार्यान्वयन

def solve(number):
    while number // 100:
        last_digit = number % 10
        number //= 10
        number -= last_digit * 5
    return number % 17 == 0

number = 99943
if solve(number):
    print("विभाज्य")
else:
    print("विभाज्य नहीं")

इनपुट

99943

आउटपुट

विभाज्य

व्याख्या:

संख्या 99943 के लिए चरण-दर-चरण गणना:

  • 9994 - (3 × 5) = 9979
  • 997 - (9 × 5) = 952
  • 95 - (2 × 5) = 85
  • 85 ÷ 17 = 5 (पूरी तरह विभाज्य)

इसलिए 99943, 17 से विभाज्य है।

  1. - पायथन में प्राइमोरियल प्राइम की जांच

    समस्या विवरण एक संख्या n दी गई है, जांचें कि क्या यह प्राइमोरियल प्राइम है। प्राइमोरियल प्राइम = pN# + 1 या pN# - 1 रूप की अभाज्य संख्या, जहां pN# पहले N अभाज्य संख्याओं का गुणनफल है। उदाहरण इनपुट: 29 आउटपुट: True व्याख्या: N=3 के लिए, प्राइमोरियल = 2×3×5 = 30, 30-1 = 29 (अभाज्य) एल्गोरिदम सिव ऑफ

  1. - पायथन में अकिलीज़ नंबर की जांच

    समस्या विवरण एक संख्या n दी गई है, जांचें कि क्या यह अकिलीज़ नंबर है। अकिलीज़ नंबर = शक्तिशाली संख्या (हर अभाज्य गुणक p के लिए, p² भी विभाजित करता है) लेकिन पूर्ण घात नहीं (a^b रूप में नहीं)। उदाहरण इनपुट: 108 आउटपुट: True 108 = 2² × 3³ — दोनों अभाज्य गुणकों के वर्ग विभाजित करते हैं, लेकिन 108 पूर्

  1. - Python प्रोग्राम: जांचें कि कोई संख्या अभाज्य है या नहीं

    इसमें, हम एक प्रोग्राम लिखेंगे जो जांच करेगा कि दी गई संख्या जो 1 से अधिक है, अभाज्य है या नहीं। एक अभाज्य संख्या 1 से बड़ा एक धनात्मक पूर्णांक है जिसके केवल दो गुणनखंड होते हैं 1 और वह संख्या स्वयं, उदाहरण के लिए संख्या: 2, 3, 5, 7... आदि अभाज्य संख्याएं हैं क्योंकि उनके केवल दो गुणनखंड होते हैं