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

पायथन में एक 3D आकृति का भूतल क्षेत्र ज्ञात करें


मान लीजिए कि हमारे पास N*M मैट्रिक्स A है, यह 3D आकृति का प्रतिनिधित्व है। बिंदु (i, j) पर भवन की ऊंचाई A[i][j] है। हमें आकृति का पृष्ठीय क्षेत्रफल ज्ञात करना है।

इसलिए, यदि इनपुट एन =3, एम =3, ए =[[1, 4, 5], [3, 3, 4], [1, 3, 5]] जैसा है, तो आउटपुट 72 होगा।

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

  • रेस :=0

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

    • j के लिए 0 से M की सीमा में, करें

      • up_side :=0

      • लेफ्ट_साइड :=0

      • अगर मैं> 0, तो

        • up_side :=array[i-1, j]

      • अगर j> 0, तो

        • लेफ्ट_साइड:=ऐरे [i, j - 1]

      • रेस:=रेस + |सरणी[i][j] - up_side| + |सरणी[i][j] - लेफ्ट_साइड|

      • अगर मैं एन -1 के समान हूं, तो

        • रेस:=रेस + ऐरे [i, j]

      • यदि j, M-1 के समान है, तो

        • रेस:=रेस + ऐरे [i, j]

  • रेस:=रेस + एन * एम * 2

  • रिटर्न रेस

उदाहरण

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

M = 3
N = 3
def get_surface_area(array):
   res = 0
   for i in range(N):
      for j in range(M):
         up_side = 0
         left_side = 0
         if (i > 0):
            up_side = array[i - 1][j]
         if (j > 0):
            left_side = array[i][j - 1]
         res += abs(array[i][j] - up_side)+abs(array[i][j] - left_side)
         if (i == N - 1):
            res += array[i][j]
         if (j == M - 1):
            res += array[i][j]
   res += N * M * 2
   return res
array = [[1, 4, 5],[3, 3, 4],[1, 3, 5]]
print(get_surface_area(array))

इनपुट

[[1, 4, 5],[3, 3, 4],[1, 3, 5]]

आउटपुट

72

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

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

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

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक मैट्रिक्स को देखते हुए, हमें उसी मैट्रिक्स में ट्रांसपोज़ को स्टोर करना होगा और उसे प्रदर्शित करना होगा। पंक्तियों को कॉलम और कॉलम को पंक्तियों में बदलकर मैट्रिक्स का स्थानांतरण प्राप्त किया ज

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

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