/*
Total squares in a 3 * 3 grid are 14
1x1 squares = 9 Squares
2x2 squares = 4 Squares
3x3 squares = 1 Squares
*/
#include <iostream>
// Function to calculate the total number of squares in an N x N grid
int countSquaresInNxNGrid(int N) {
if (N <= 0) {
throw std::invalid_argument("Grid size must be a positive integer.");
}
int totalSquares = 0;
// Sum of squares of side lengths from 1 to N
for (int k = 1; k <= N; k++) {
totalSquares += k * k;
}
return totalSquares;
}
int main() {
int N = 3;
try {
int totalSquares = countSquaresInNxNGrid(N);
std::cout << "The total number of squares in a " << N << "x" << N <<
" grid is: " << totalSquares << std::endl;
} catch (const std::exception &e) {
std::cerr << "Error: " << e.what() << std::endl;
return 1;
}
}
/*
run:
The total number of squares in a 3x3 grid is: 14
*/