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

पायथन में एन के नीचे सभी छंटनी योग्य प्राइम का योग पाएं

मान लीजिए कि हमारे पास एक दिया गया पूर्णांक N है; हमें एन से कम सभी ट्रंकटेबल प्राइम का योग खोजना होगा। जैसा कि हम जानते हैं कि ट्रंकटेबल प्राइम एक संख्या है जो बाएं-छंटनी योग्य प्राइम है (यदि अग्रणी "बाएं" अंक क्रमिक रूप से हटा दिया जाता है, तो सभी परिणामी संख्याओं को प्राइम के रूप में माना जाता है) साथ ही दाएं-छंटनी योग्य अभाज्य (यदि अंतिम "दाएं" अंक को क्रमिक रूप से हटा दिया जाता है, तो सभी परिणामी संख्याओं को अभाज्य माना जाता है)। ट्रंकटेबल प्राइम का एक उदाहरण 9137 है क्योंकि यह लेफ्टट्रंकटेबल प्राइम है क्योंकि 9137, 137, 37 और 7 प्राइम हैं। अत:9137 एक छोटा अभाज्य अभाज्य है।

तो, अगर इनपुट एन =55 की तरह है, तो आउटपुट 130 होगा (2 + 3 + 5 + 7 + 23 + 37 + 53) =

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • एन:=1000005

  • प्राइम:=आकार N की एक सूची और ट्रू से भरें

  • एक फ़ंक्शन चलनी () को परिभाषित करें। इसमें लगेगा

  • प्राइम [1]:=झूठा, अभाज्य [0]:=झूठा

  • मेरे लिए 2 से N की सीमा में, करें

    • अगर प्राइम [i] ट्रू के समान है, तो

      • j रेंज में i * 2 से N के लिए, प्रत्येक चरण में i, do द्वारा अपडेट करें

        • प्राइम [जे]:=झूठा

  • मुख्य विधि से, निम्न कार्य करें -

  • योग :=0

  • मेरे लिए 2 से n की सीमा में, करें

    • वर्तमान:=मैं

    • एफ:=सच

  • जबकि करंट गैर-शून्य है, करें

    • अगर प्राइम [करंट] गलत है, तो

      • च :=असत्य

      • लूप से बाहर आएं

    • वर्तमान:=वर्तमान / 10

  • वर्तमान:=मैं

  • शक्ति :=10

  • जबकि (वर्तमान / शक्ति) का भागफल शून्य नहीं है, करें

    • अगर प्राइम [वर्तमान मॉड पावर] गलत है, तो

      • च :=असत्य

      • लूप से बाहर आएं

    • शक्ति :=शक्ति * 10

  • अगर f सच है, तो

    • योग :=योग + मैं

  • वापसी राशि

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

N = 1000005
prime = [True for i in range(N)]
def sieve():
   prime[1] = False
   prime[0] = False
   for i in range(2, N):
      if (prime[i]==True):
         for j in range(i * 2, N, i):
            prime[j] = False
def get_total_of_trunc_primes(n):
   sum = 0
   for i in range(2, n):
   current = i
   f = True
   while (current):
      if (prime[current] == False):
         f = False
         break
      current //= 10
   current = i
   power = 10
   while (current // power):
      if (prime[current % power] == False):
         f = False
         break
      power *= 10
   if f:
      sum += i
   return sum
n = 55
sieve()
print(get_total_of_trunc_primes(n))

इनपुट

55

आउटपुट

130

  1. पायथन में एक पेड़ के सभी तत्वों का योग खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक बाइनरी ट्री है जिसमें कुछ मान हैं, हमें ट्री के सभी मानों का योग ज्ञात करना है। तो, अगर इनपुट पसंद है तो आउटपुट 14 . होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - फ़ंक्शन रिकर्स () को परिभाषित करें। यह नोड लेगा वैल:=नोड का मान यदि नोड का बायां भाग शून्

  1. पायथन प्रोग्राम में सरणी का योग ज्ञात करें

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सरणी दी गई है, जिसकी हमें सरणी के योग की गणना करने की आवश्यकता है। योग प्राप्त करने के लिए प्रत्येक अनुक्रमणिका में संपूर्ण सरणी और तत्व को पार करने के लिए पाशविक-बल दृष्टिकोण की चर्चा नीचे प्रत्येक अनुक्रमण

  1. सरणी का योग खोजने के लिए पायथन कार्यक्रम

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक इनपुट के रूप में एक सरणी को देखते हुए, हमें दिए गए सरणी के योग की गणना करने की आवश्यकता है। यहां हम ब्रूट-फोर्स अप्रोच का अनुसरण कर सकते हैं, यानी एक सूची को पार करना और प्रत्येक तत्व को एक खा