2011-04-01 13 views
5

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

सूत्र एकल सूचकांक को

int index = x + y * width; 
    MyArray[index] ; 

तो मेरे सवाल का मैं इसे कैसे बदल जाते हैं दो आयामों में वापस आ गया है?

int x = index ??? width; 
int y = index ??? width; 

किसी कारण से मेरे सिर को लपेट नहीं सकता है।

धन्यवाद

उत्तर

7
int x = index % width; 
int y = index/width; 
+0

धन्यवाद श्रीमान, मैं मॉड के आने पर चूसता हूं। क्या आप किसी भी मौके से इस बहु-एकल अनुक्रमण के लिए उचित शब्दावली जानते हैं? तो मुझे अगली बार डमी की तरह नहीं लगता है: पी – TimD

+0

मुझे किसी भी विशेष शब्दावली के बारे में पता नहीं है - शायद कोई और चिपका सकता है ;-) – BrokenGlass

+1

सिंगल इंडेक्सिंग (मैटलैब में) रैखिक अनुक्रमण के रूप में जाना जाता है, अन्य आप बहु-आयामी अनुक्रमण कॉल कर सकता है। –

3

एक्स = सूचकांक% चौड़ाई; वाई = सूचकांक/चौड़ाई;

संबंधित मुद्दे