C Online Compiler
Example: Sum of Both Diagonals with Overlap Handling in C
C
C++
C#
Java
Python
PHP
main.c
STDIN
Run
// Sum of Both Diagonals with Overlap Handling #include <stdio.h> int main() { // Step 1: Define the square matrix and its size int matrix[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; int size = 3; // For a 3x3 matrix // Step 2: Initialize sum for both diagonals int total_diagonal_sum = 0; // Step 3: Iterate to sum elements from both diagonals for (int i = 0; i < size; i++) { total_diagonal_sum += matrix[i][i]; // Add main diagonal element total_diagonal_sum += matrix[i][size - 1 - i]; // Add secondary diagonal element } // Step 4: Handle overlap for odd-sized matrices // If the matrix size is odd, the center element (matrix[size/2][size/2]) // is counted twice (once for main, once for secondary diagonal). // We need to subtract it once to get the correct unique sum. if (size % 2 == 1) { total_diagonal_sum -= matrix[size / 2][size / 2]; } // Step 5: Print the result printf("Matrix:\n"); for (int i = 0; i < size; i++) { for (int j = 0; j < size; j++) { printf("%d ", matrix[i][j]); } printf("\n"); } printf("Sum of both diagonal elements (with overlap handling): %d\n", total_diagonal_sum); return 0; }
Output
Clear
ADVERTISEMENTS