मैं इस कोड को किताब से समझने की कोशिश कर रहा हूं।
int[][] grade = {
{ 1, 0, 1 },
{ 0, 1, 0 },
{ 1, 0, 1 }
};
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (i == j)
System.out.print(grade[i][j] + grade[j][i] + " ");
else
System.out.print(grade[i][j] * grade[j][i] + " ");
}
System.out.println(" ");
}
मैं पंक्तियों और स्तंभों के द्वि-आयामी सरणियों के तर्क को समझता हूं। मुझे समझ में नहीं आता कि इसका उत्तर कैसे आया।
2 0 1
0 2 0
1 0 2
2 जवाब
यह 2 आयामी सरणी के माध्यम से लूप करता है। अगर मैं j के बराबर है, जैसे (0,0 1,1 2,2) तो यह ग्रेड [i] [j] को ग्रेड [j] [i] के साथ जोड़ता है। चूंकि i और j बराबर हैं, यह स्थान को अपने साथ जोड़ता है।
जब मैं j के बराबर नहीं होता तो यह ग्रेड [i] [j] को ग्रेड [j] [i] से गुणा करता है।
चूंकि वे बराबर नहीं हैं, यह ग्रिड में 2 अलग-अलग पदों को गुणा करता है। जैसे
ग्रेड [3] [1] को ग्रेड [1] [3] से गुणा किया जाता है, स्वयं से नहीं।
यदि आपने ग्रेड [1] [3] को 2 में बदल दिया है, तो सभी कोनों का आउटपुट 2 . होगा
इनपुट:
1 0 2
0 1 0
1 0 1
आउटपुट होगा:
2 0 2
0 2 0
2 0 2
यह मूल रूप से दो आयामी सरणी के माध्यम से लूप करता है और यदि यह देखता है कि कॉलम और पंक्ति संख्या (i और j) समान हैं तो यह इसे स्वयं के साथ जोड़ देगा। यानी विकर्ण को दो से गुणा करें। और बाकी प्रविष्टियों के लिए यह अपने आप से गुणा हो जाएगा।
संबंधित सवाल
नए सवाल
java
जावा एक उच्च स्तरीय प्रोग्रामिंग भाषा है। इस टैग का उपयोग तब करें जब आपको भाषा का उपयोग करने या समझने में समस्या हो। इस टैग का उपयोग शायद ही कभी किया जाता है और इसका उपयोग अक्सर [वसंत], [वसंत-बूट], [जकार्ता-ई], [Android], [javafx], [हडूप], [श्रेणी] और [मावेन] के साथ किया जाता है।