各位高手,请教一个问题在winform中的dataGrid中,实现如下的算法:
第一行:1 2 0 5 7 1
第二行:2 3 6 8 2 1
当第一行中有数字0时,数字0前面的数,在下一行加1;
数字0 后面的数,在下一行,斜着加1,5加1得6,填充到0下,7加1得8,填充到5下,1加1得2,填充到7下,最后第一行数字1下的数字不变还是1。大概就是这样的一个算法!请问怎么实现?最好有具体的代码!不甚感激!!!!
第一行:1 2 0 5 7 1
第二行:2 3 6 8 2 1
当第一行中有数字0时,数字0前面的数,在下一行加1;
数字0 后面的数,在下一行,斜着加1,5加1得6,填充到0下,7加1得8,填充到5下,1加1得2,填充到7下,最后第一行数字1下的数字不变还是1。大概就是这样的一个算法!请问怎么实现?最好有具体的代码!不甚感激!!!!
{
for (int y = 0; y < dataGridView1.Columns.Count; y++)
{
if (Convert.ToInt32(dataGridView1.Rows[x].Cells[y].Value) == 0)
{
for (int i = y - 1; i >= 0; i--) dataGridView1.Rows[x + 1].Cells[i].Value = Convert.ToInt32(dataGridView1.Rows[x].Cells[i].Value) + 1;
for (int i = y + 1; i < dataGridView1.Columns.Count; i++) dataGridView1.Rows[x + 1].Cells[i - 1].Value = Convert.ToInt32(dataGridView1.Rows[x].Cells[i].Value) + 1;
}
if (y == dataGridView1.Columns.Count - 1) dataGridView1.Rows[x + 1].Cells[y].Value = dataGridView1.Rows[x].Cells[y].Value;
}
}