मैं संरचना का उपयोग कर दो मैट्रिक्स योग करने की कोशिश कर रहा हूँ, लेकिन यह काम नहीं करता।
अगर इस कोड को अनुकूलित किया जा सकता है तो कृपया मुझे बताएं: डी
संकलन:
g++ -O2 -Wall program.cpp -o program
आउटपुट:
फ़ाइल में /usr/include/c++/4.8/iostream:39:0, Proy3.cpp से:2: /usr/include/c++/4.8/ostream:548:5: नोट: टेम्प्लेट std::basic_ostream& std: :ऑपरेटर<<(std::basic_ostream&, const unsigned char*) ऑपरेटर<<(basic_ostream& __out, const unsigned char* __s) ^ /usr/include/c++/4.8/ostream:548:5: नोट: टेम्प्लेट तर्क कटौती/ प्रतिस्थापन विफल: Proy3.cpp:51:30: नोट: 'std::istream {aka std::basic_istream}' 'std::basic_ostream' cin << &M2.x[i][j] से व्युत्पन्न नहीं है;
कोड:
# include < cstdio >
# include < iostream >
typedef struct Matrix
{
int row, column;
int x[20][20];
};
Matrix M1,M2;
नेमस्पेस एसटीडी का उपयोग करना;
मुख्य प्रवेश बिंदु() {
cout << "Insert size rows: Mat[a]";
cin >> M1.row);
cout << "Insert size of columns Mat[a]";
cin >> M1.column;
cout << "Insert size of rows Mat[b]";
cin >> M2.row;
cout << "Insert size of columns Mat[b]";
cin >> M2.column;
int i, j;
// Matrix x
for(i = 0; i <= M1.row; i++)
{
for(j = 0; j <= M1.column; j++)
{
cout << "Insert number for matrix X : \n";
cin >> M1.x[i][j]
}
}
// Matrix y
for(i = 0; i <= M2.row; i++)
{
for(j = 0; j <= M2.column; j++)
{
cout << "Insert number for matrix Y : \n";
cin << M2.x[i][j];
}
}
// Matrix X + Matrix Y
for(i = 0; i <= M1.row; i++)
{
for(j = 0; j < M1.column; j++)
{
cout <<"The sum of " << M1.x[i][j] << " + " << M2.x[i][j] << " = " << M1.x[i][j] + M2.x[i][j] << endl;
}
}
return 0;
}
2 जवाब
for(i = 0; i <= M2.M1.row; i++)
{
for(j = 0; j <= M2.M1.column; j++)
{
cout << "Insert number for matrix Y : \n";
cin << &M2.M1.y[i][j];
}
}
M2.M1.y
जैसा कोई तत्व नहीं है जिसे आप एक्सेस करने का प्रयास कर रहे हैं। इसके अलावा आप M1
को M2
के अंदर क्यों घोषित कर रहे हैं। आपके पास केवल एक संरचना हो सकती है और इसके दो उदाहरण हो सकते हैं। कुछ ऐसा
struct matrix
{
int row,column;
int X[20][20];
};
struct matrix M1,M2;
अब आप दो मैट्रिक्स इनपुट कर सकते हैं।
साथ ही आपको cin>>&a
के बजाय cin>>a
का उपयोग करना होगा।
साथ ही cin << &M2.x[i][j];
होना चाहिए
cin >> M2.x[i][j];
^^^^
मुझे लगता है कि सिनेमा की स्थिति cin >> &M2.x[i][j]; सिने के बजाय << &M2.x[i][j];
संबंधित सवाल
नए सवाल
c++
C ++ एक सामान्य-प्रयोजन प्रोग्रामिंग भाषा है। यह मूल रूप से C के विस्तार के रूप में डिज़ाइन किया गया था और इसमें एक समान सिंटैक्स है, लेकिन यह अब पूरी तरह से अलग भाषा है। C ++ कंपाइलर के साथ संकलित कोड के बारे में प्रश्नों के लिए इस टैग का उपयोग करें। विशिष्ट मानक संशोधन [C ++ 11], [C ++ 14], [C ++ 17], [C ++ 20] या [C ++ 23], आदि से संबंधित प्रश्नों के लिए संस्करण-विशिष्ट टैग का उपयोग करें। ।