我正在尝试将一对有序的数字转换为 3x3 矩阵,但在编写转换时遇到了麻烦。
我已经尝试了嵌套 for 循环的多种变体来解决这个问题,但我没有得到想要的结果。
这是我目前的尝试:
for(i = 0; i < 6; i++) {
row = matrixAin[i][0];
col = matrixAin[i][1];
for(j = 1; j <= row; j++) {
for(int k = 1; k <= col; k++) {
matrixA[j][k] = 1;
}
}
}
这是我拥有的所有代码:
#include <iostream>
using namespace std;
int main() {
int matrixAin[6][2]; // ordered pair of Matrix A
int matrixA[3][3]; // 3x3 matrix of Matrix A
int i, j, row, col; // for the for loops
// Sets Matrix A & B values to 0
for (i = 0; i < 3; i++) {
for(j = 0; j < 3; j++) {
matrixA[i][j] = 0;
matrixB[i][j] = 0;
}
}
// input of Matrix A
cout << "Please input the ordered pairs for matrix A: ";
for (i = 0; i < 6; i++) {
cin >> matrixAin[i][0] >> matrixAin[i][1]; // row , col
}
// sets row / col to 1 for Matrix 3x3
// this is the code with the issue
for(i = 0; i < 6; i++) {
row = matrixAin[i][0];
col = matrixAin[i][1];
for(j = 1; j <= row; j++) {
for(int k = 1; k <= col; k++) {
matrixA[j-1][k] = 1;
}
}
}
// Displays matrix A
cout << "A= ";
for(int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
cout << matrixA[i][j] << ' ';
}
cout << endl;
}
}
这就是这个矩阵的输入应该是什么样子
请输入矩阵 A 的有序对:
1 2
1 3
2 1
2 2
3 2
3 3
这是预期的结果:
一个=
0 1 1
1 1 0
0 1 1