मतलाब में कोष्ठक के साथ या बिना कोष्ठ-उत्पन्न सरणियाँ


0

मैं जो बता सकता हूं, उससे सरणियां a:d:b तथा [a:d:b] बिल्कुल वही बात है। उदाहरण के लिए,

>> [1:3] == 1:3
ans =
  1×3 logical array
   1   1   1

फिर भी, ये दो भाव अलग-अलग परिणाम देते हैं:

>> [1:3]' + 1:3
ans =
     2     3

>> [1:3]' + [1:3]
ans =
     2     3     4
     3     4     5
     4     5     6

क्यूं कर?

(मैं Matlab R2017b 9.3.0.713579 का उपयोग कर रहा हूं)

जवाबों:


1

इस मंच पर Rik Wisselink से एक अच्छा जवाब आया: https://www.mathworks.com/matlabcentral/answers/391046-colon-generated-arrays-with-or-without-brackets

इसका कारण यह अप्रत्याशित क्रम है जिसमें यह कथन है   का मूल्यांकन:

[1:3]' + 1:3  
([1:3]' + 1):3  
([1;2;3]+1):3  
[2;3;4]:3  
2:3  
[2,3]  

कोष्ठक जोड़ने से पहले और बाद में समूह को बल मिलता है   ऑपरेटर (कोष्ठकों ने भी काम किया होगा)।

स्टीफन कोबाल्डिक कहते हैं कि यह इस तथ्य से समझाया गया है कि + से अधिक प्राथमिकता है :

स्टीवन लॉर्ड भी टिप्पणी करते हैं कि दस्तावेज़ में पंक्ति 4 से 5 तक के संक्रमण को समझाया गया है:

यदि आप nonscalar सरणियों को निर्दिष्ट करते हैं, तो MATLAB j: i: k as j (1): i (1): k (1) की व्याख्या करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.