【发布时间】:2017-07-29 18:05:28
【问题描述】:
我使用二维向量创建了一个矩阵。我使用的代码是
int RC=50;
vector<vector<int> > matrix;
vector<int>row;
///////////Building Grid//////////////////
for(int i=0;i<RC;i++)
{
for(int j=0;j<RC;j++)
{
row.push_back(0);
}
matrix.push_back(row);
}
//////////Printing Grid///////////////////
for(int i=0;i<RC;i++)
{
for(int j=0;j<RC;j++)
{
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
上面代码的输出是
现在我想要的是通过输入块的左下角位置用“$”或任何字符填充矩阵内大小为 6x6 的块。例如,如果我将位置指定为 (10,4),那么我想放置一个左下坐标为 (10,4) 的“$”块(大小为 6x6)。
EDIT-1
我添加了代码
int si=3;
int sy=3;
for(int i=0;i<RC;i++)
{
for(int j=0;j<RC;j++)
{
if(i>=si && i<=si+6 && j>=sy && j<=sy+6)
{
matrix[i][j]=1;
}
else
{
matrix[i][j]=0;
}
}
}
我得到了输出
我正在读取左上角的坐标,我应该怎么做才能读取左下角的坐标并从那里构建块?
【问题讨论】:
-
那么,您的问题到底是什么?你刚刚描述了你打算做什么。
-
对不起,刚刚更新了问题
-
从
i - 6开始迭代行而不是i(假设i正在遍历行,j是列)。应该可以的,不是吗?
标签: c++ matrix multidimensional-array vector