Verifica della somma delle diagonali
PROBLEMA
Caricare una matrice 9×9 di interi e verificare se la somma delle celle delle due diagonali è uguale.
CODICE SORGENTE
#include <stdio.h>
#include <stdlib.h>
#define RIGHE 9
#define COLONNE 9
int main(int argc, char *argv[]){
//sezione dichiarativa
int tab[RIGHE][COLONNE];
int i, j, temp, somma_diagonale_1=0, somma_diagonale_2=0;
//caricamento array
for (i=0;i<RIGHE;i++){
for (j=0;j<COLONNE;j++){
system("Cls");
printf("Riga %i Colonna %i\nInserire il valore\n>", i+1, j+1);
scanf("%i", &tab[i][j]);
}
printf("\n");
}
//output array
system("cls");
printf(">Visualizzazione tabella\n");
for (i=0;i<RIGHE;i++){
printf(">|");
for (j=0;j<COLONNE;j++){
printf(" %i ", tab[i][j]);
}
printf("|");
printf("\n");
}
//output diagonale considerata grafica matrice quadrata
printf(">Diangonale secondaria della matrice\n");
for (i=0;i<RIGHE;i++){
printf(">|");
for (j=0;j<COLONNE;j++){
if ((i+j==COLONNE-1) || (i==j))
printf(" %i ", tab[i][j]);
else
printf(" ");
}
printf("|");
printf("\n");
}
//somma prima diagonale
for (i=0;i<RIGHE;i++){
for (j=0;j<COLONNE;j++){
if (i+j==COLONNE-1)
somma_diagonale_1=somma_diagonale_1+tab[i][j];
}
}
//somma seconda diagonale
for (i=0;i<RIGHE;i++){
for (j=0;j<COLONNE;j++){
if (i==j)
somma_diagonale_2=somma_diagonale_2+tab[i][j];
}
}
if (somma_diagonale_1==somma_diagonale_2)
printf("\nLa somma delle due diagonali e' guale\n");
else
printf("\nLa somma delle due diagonali non e' uguale\n");
system("PAUSE");
return 0;
}