開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
code::blocks
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
寫了一個class Matrix,主要是希望產生矩陣,矩陣內的elements是由亂數產生
目前遇到的問題是在主程式宣告兩個Matrix A,B,分別呼叫member function
可是兩個矩陣內的elements都一樣。
餵入的資料(Input):
預期的正確結果(Expected Output):
矩陣A和矩陣B內由亂數產生的elements應該要不同。
錯誤結果(Wrong Output):
矩陣A和矩陣B內的值一模一樣。
程式碼(Code):(請善用置底文網頁, 記得排版)
class Matrix
{
private:
int dim;
int **Array;
public:
void assignDimension(int n);
void assignElements();
void printMatrix();
};
void Matrix::assignDimension(int n)
{
dim = n;
}
void Matrix::assignElements()
{
srand(time(NULL));
Array = new int *[dim];
for(int row = 0;row < dim;row++)
Array[row] = new int [dim];
for(int i = 0;i < dim;i++)
{
for(int j = 0;j < dim;j++)
*(Array[i] + j) = rand() % 10 + 1;
}
}
void Matrix::printMatrix()
{
.......;
}
int main()
{
int n;
cout << "Enter n for n x n matrix: ";
cin >> n;
Matrix A, B;
A.assignDimension(n);
A.assignElements();
cout << "A = ";
A.printMatrix();
cout << endl;
B.assignDimension(n);
B.assignElements();
cout << "B = ";
B.printMatrix();
cout << endl;
return 0;
}
補充說明(Supplement):
初學C++,想了很久不知哪裡出問題><,麻煩板上大大,謝謝。