如何保持2d数组的运行总数

时间:2013-10-09 18:38:50

标签: c++ arrays running-total

这是我的一些代码。我试图保持一个2d阵列的运行总计。 我有一个随机数生成器在2d数组中生成x和y位置。该位置得到一个2添加到x和y位置和位于正下方,上方,右侧和左侧的位置得到一个1。这可能会发生多次。我需要将输入的所有值相加到数组中。

我无法让跑步总数发挥作用。我不知道如何添加输入到二维数组中的值。有谁知道怎么做?

int paintSplatterLoop(int ary [ROWS][COLS])
{
double bagCount,
       simCount,
       totalCupCount = 0.0;//accumulator, init with 0

double totalRowCount = 0, totalColCount=0;

double simAvgCount = 0;
double cupAvgCount;

for (simCount = 1; simCount <= 1; simCount++)
{
    for (bagCount = 1; bagCount <= 2; bagCount++)
    {
        for (int count = 1; count <= bagCount; count++);
        {
            int rRow = (rand()%8)+1;
            int rCol = (rand()%6)+1;
            ary[rRow][rCol]+=2; 
            ary[rRow-1][rCol]+=1; 
            ary[rRow+1][rCol]+=1;
            ary[rRow][rCol-1]+=1;
            ary[rRow][rCol+1]+=1;
        }
        totalRowCount += ary [rRow][rCol];
        totalColCount += rCol;
    }

}
totalCupCount = totalRowCount + totalColCount;
cout<<"total cups of paint "<<totalCupCount<<"\n"<<endl;

 return totalCupCount;
}

1 个答案:

答案 0 :(得分:1)

这就是我对二维数组的内容求和的方法:

int sum_array(int array[ROWS][COLS])
{
    int sum = 0;

    for (int i = 0; i < ROWS; ++i)
    {
        for (int j = 0; j < COLS; ++j)
        {
            sum += array[i][j];
        }
    }

    return sum;
}