// AP Computer Science, A Exam, 1996, Question 4, part A in C++ // also AB Exam, question 2 int SumCross(const Matrix & m, int R, int C) // precondition: 0 <= R < m.numRows(); 0 <= C < m.numCols() { int sum = 0; int j; int rows = m.numRows(); // store value, call only once int cols = m.numCols(); // per loop iteration // sum down the C-th column for(j=0; j < rows; j++) { sum += m[j][C]; } // sum across the R-th row for(j=0; j < cols; j++) { sum += m[R][j]; } // subtract m[R][C] which was summed twice sum -= m[R][C]; return sum; }