multidimensional arrays c
उदाहरणों के साथ C ++ में बहुआयामी सरणी की भूमिका।
अब तक, हमारे पहले के ट्यूटोरियल्स में, हमने सभी एक-आयामी सरणियों के बारे में देखा है।
C ++ एक से अधिक आयाम वाले सरणियों का भी समर्थन करता है। इन्हें बहुआयामी सरणियाँ कहा जाता है। बहुआयामी सरणियों को आमतौर पर सारणीबद्ध रूप में अर्थात् पंक्ति-प्रमुख क्रम में व्यवस्थित किया जाता है।
=> संपूर्ण सी ++ प्रशिक्षण श्रृंखला यहां देखें।
आप क्या सीखेंगे:
C ++ में बहुआयामी एरर्स
आयाम 3 × 2 यानी 3 पंक्तियों और 2 स्तंभों के बहुआयामी सरणी पर विचार करें।
हम निम्नानुसार इस सरणी का प्रतिनिधित्व करते हैं:
आर 1 सी 1 | R2c2 |
R2c1 | R2c2 |
R3c1 | R3c2 |
जैसा कि उपरोक्त प्रतिनिधित्व में दिखाया गया है, प्रत्येक कोशिका जैसे R1C1 एरे की सामग्री को रखेगा।
एक बहुआयामी सरणी में मौजूद तत्वों की संख्या इसके आयामों का उत्पाद है। इसका अर्थ है कि यदि किसी सरणी के आयाम 3 × 2 हैं तो उस सरणी में तत्वों की संख्या 3 और 2 अर्थात 6 का गुणनफल है। यदि इसी प्रकार, बहुआयामी सरणी के आयाम (10) (20) (10) हैं तब उस सरणी में तत्वों की संख्या 10 * 20 * 10 = 2000 है।
एक दो आयामी सरणी C ++ द्वारा उपयोग किए जाने वाले बहुआयामी सरणी का सबसे सरल रूप है।
एक ऐरे की घोषणा
C ++ में बहुआयामी सरणी की सामान्य घोषणा नीचे दी गई है:
dataType arrayName (size1)(size2)….(sizen);
यहाँ, डेटा टाइप सरणी का डेटा प्रकार है। डेटाटाइप को C ++ द्वारा समर्थित होना चाहिए।
arrayName बहुआयामी सरणी का नाम है।
Size1, size2…। नागरिक सरणी आयामों में से प्रत्येक के आकार हैं।
उदाहरण के लिए,आइए एक सरणी की घोषणा करें आकार 3 × 2 यानी एक दो आयामी सरणी, myarray_2d।
int myarray_2d (3)(2);
एक दो-आयामी सरणी को पंक्तियों और स्तंभों के रूप में दर्शाया गया है।
तो सरणी की उपरोक्त घोषणा को निम्नानुसार दर्शाया जा सकता है:
myarray_2d (0) (0) | myarray_2d (0) (1) |
myarray_2d (1) (0) | myarray_2d (1) (१) |
myarray_2d (2) (0) | myarray_2d (2) (१) |
जैसा कि उपरोक्त प्रतिनिधित्व में दिखाया गया है, 2-आयामी सरणी के प्रत्येक तत्व को myarray_2d (i) (j) के रूप में एक्सेस किया जाता है, जहाँ मैं पंक्ति संख्या है और यह 0 से n-1 तक है जहाँ n आयाम का आकार है और j है। कॉलम संख्या और यह 0 से m-1 तक है जहां m कॉलम का आयाम आकार है।
बहुआयामी Arrays की शुरुआत
हम एक-आयामी सरणियों के समान बहुआयामी सरणियों को आरंभ कर सकते हैं। बहुआयामी सरणियों को प्रारंभिक पंक्ति-वार किया जाता है।
दो तरीके हैं जिनके द्वारा हम बहुआयामी सरणियों को आरंभ कर सकते हैं।
# 1) आयामों के साथ एक सरणी पर विचार करें (3) (2) जिसका नाम मायरे है:
int myarray(3)(2) = {1, 2,3,4,5,6};
यहाँ, सरणी की आरंभीकरण पंक्तिबद्ध तरीके से पंक्ति से बाएँ से दाएँ होता है। जैसा कि आयाम हैं (3) (2), पहले दो तत्व पहली पंक्ति बनाएंगे और इसी तरह।
इस प्रारंभिक चित्रण का चित्रण नीचे दिखाया गया है:
एक | दो |
३ | ४ |
५ | ६ |
# 2) ऊपर दिखाए गए समान सरणी को नीचे दिखाए गए तरीके से उपयोग करके अलग किया जा सकता है:
int myarray(3)(2) = { {1,2}, {3,4}, {5,6} };
यहां, बाएं से दाएं की शुरुआत की जाती है और प्रत्येक तत्व एक पंक्ति से मेल खाता है। जैसा कि इस सरणी के लिए तीन पंक्तियाँ हैं, हमारे पास घुंघराले ब्रेस ({}) में संलग्न तीन आंतरिक तत्व हैं।
आरंभीकरण का यह तरीका अधिक पठनीय है और सरणी आयाम बढ़ने पर लाभप्रद है।
बहु-आयामी Arrays तक पहुँचने
बहु-आयामी सरणी तत्वों को पंक्ति सूचकांक और स्तंभ सूचकांक का उपयोग करके एक्सेस किया जाता है।
आइए देखते हैं उदाहरण आयामों के साथ एक दो आयामी सरणी (3) (3)। नीचे इसे आरंभ करने के लिए कोड है।
int newarray (3)(3) = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
अगर मैं पहली पंक्ति में दूसरे तत्व को एक्सेस करना चाहता हूं और इसे एक पूर्णांक चर पर असाइन करना चाहता हूं, तो कोड की रेखा होगी:
int val_2d = newarray(0)(1);
नीचे एक नमूना कार्यक्रम है जो एक द्वि-आयामी सरणी की घोषणा, आरंभीकरण और पहुंच को दर्शाता है।
#include using namespace std; int main() { int myarray(3)(3) = {{1,2,3},{4,5,6},{7,8,9}}; for(int i=0;i <3;i++) { for(int j=0;j<3;j++) { cout< यह प्रोग्राम निम्न आउटपुट का उत्पादन करता है:
१ २ ३ ४ ५ ६ 9। ९
जैसा कि उपरोक्त कार्यक्रम में दिखाया गया है, एक द्वि-आयामी सरणी घोषित की गई है और फिर आरंभीकृत की गई है। फिर सभी सरणी तत्वों को एक्सेस और प्रिंट करने के लिए, हमने दो छोरों के लिए सेट किया है। लूप के लिए बाहरी तत्वों को पंक्ति-वार एक्सेस करना है। लूप के लिए आंतरिक प्रत्येक कॉलम में तत्वों तक पहुंचने के लिए एक काउंटर के रूप में कार्य करता है।
कैसे जावा में पैरामीटर के रूप में सरणी पास करने के लिए
इस तरह, हम इस द्वि-आयामी सरणी के प्रत्येक तत्व को एक्सेस करते हैं और इसे स्क्रीन पर प्रदर्शित करते हैं।
निष्कर्ष
बहुआयामी सरणियों में किसी भी संख्या में आयाम हो सकते हैं और जैसे-जैसे आयाम बढ़ते हैं, जटिलता भी उसी अनुसार बढ़ जाती है।
यद्यपि हमने उपरोक्त सभी उदाहरणों में दो-आयामी सरणियों का उपयोग किया है, हम एक समान तरीके से उच्च आयामों के साथ सरणियों को कोड कर सकते हैं।
=> फ्री सी ++ कोर्स के लिए यहां क्लिक करें।
अनुशंसित पाठ
- एसटीएल में गिरफ्तारी
- C ++ में फ़ंक्शंस के साथ एरे का उपयोग करना
- C ++ उदाहरणों के साथ आता है
- VBScript Arrays: DIM, REDIM, स्प्लिट और उबाउंड ऐरे फंक्शन्स का उपयोग करना
- Arrays का उपयोग करके MongoDB में कई दस्तावेज़ सम्मिलित करें
- सर्वश्रेष्ठ मुफ्त सी # ट्यूटोरियल श्रृंखला: शुरुआती के लिए अंतिम सी # गाइड
- जावा डाटाटेप्स, लूप्स, एरेस, स्विच एंड एसेसरीज
- उन्नत यूनिक्स शैल स्क्रिप्टिंग: एरे, फाइल और स्ट्रिंग टेस्ट ऑपरेटर्स, विशेष चर