2014-05-25 76 views
-7

我有以下代碼,我想,我的程序需要輸入兩個大小爲「3 * 3」的矩陣並顯示帶有加法的結果。我很困惑,不知道如何使它工作..請檢查我的代碼,讓我知道如何處理它。在C++中如何顯示添加矩陣的結果

#include <iostream> 

using namespace std; 

const int maxRows = 3; 
const int maxCols = 3; 

void readMatrix(int arr[][maxCols]); 
void displayMatrix(int a[][maxCols]); 

int main() { 

    int a[maxRows][maxCols]; 

    readMatrix(a); 

    cout << "\n\n" << "The matrix is: " << '\n'; 

    displayMatrix(a); 
} 

void readMatrix(int arr[][maxCols]) { 

    int row, col; 
    for (row = 0; row < maxRows; row ++) { 
     for(col=0; col < maxCols; col ++){ 
      cout << "\n" << "Enter " << row << ", " << col << " element: "; 
      cin >> arr[row][col]; 
     } 
     cout << '\n'; 
    } 
} 

void displayMatrix(int a[][maxCols]) { 

    int row, col; 
    for (row = 0; row < maxRows; row ++) { 
     for(col = 0; col < maxCols; col ++) { 
      cout << a[row][col] << '\t'; 
     } 
     cout << '\n'; 
    } 
} 
+2

你應該提供錯誤的詳細信息,如果有的話,併爲什麼你不能使它工作。 – Rakib

+0

Rakibul,我想我的代碼需要輸入兩個大小爲3 * 3的矩陣,並在最後顯示結果與補充。 –

+0

它已經顯示內容,你的意思是添加的內容? – Rakib

回答

1

你需要一個方法來添加

void add(int a[][maxCols], int b[][maxCols], int res[][maxCols]) 
{ 
int row, col; 

for (row = 0; row < maxRows; row++) { 
    for (col = 0; col < maxCols; col++) { 
     res[row][col] = a[row][col] + b[row][col]; 
    } 
    } 
} 

main創建2基質,加入他們,並顯示結果:

int main() { 

int a[maxRows][maxCols]; 
int b[maxRows][maxCols]; 
int result[maxRows][maxCols]; 

readMatrix(a); 
readMatrix(b); 


cout << "\n\n" << "The matrix is: " << '\n'; 
displayMatrix(a); 
cout << "\n\n" << "The matrix is: " << '\n'; 
displayMatrix(b); 

add(a, b, result); 
cout << "\n\n" << "The result matrix is: " << '\n'; 
displayMatrix(result); 
} 
+0

非常感謝親愛的朋友,我完全理解它......! –