Dau coroana! C++ : Problema #313 de pe pbinfo
Cerinţa
Se dă o matrice cu n linii şi n coloane şi elemente numere naturale. Calculaţi diferenţa în valoare absolută dintre sumele elementelor de pe cele două diagonale.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n*n numere naturale, separate prin spaţii, reprezentând elementele matricei, linie cu linie.
Date de ieşire
Programul afișează pe ecran numărul D, reprezentând valoarea calculată.
Restricţii şi precizări
1 ≤ n ≤ 20
elementele matricei vor fi mai mici decât 10000
Exemplu
Date de intrare
4
8 3 3 7
1 1 6 5
8 7 1 1
9 8 7 1
Date de ieșire
18
Explicație
Sumele elementelor pe cele două diagonale sunt: 11 şi 29. Diferenţa în valoare absolută este: 18
Răspunsuri la întrebare
Răspuns de
4
#include<iostream>
using namespace std;
int main(){ int n, a[21][21], dp=0, ds=0; cin>>n; for (int i=1; i<=n; i++) for (int j=1; j<=n;j++) { cin>>a[i][j]; if (i==j) dp+=a[i][j]; if (i+j==n+1) ds+=a[i][j]; } if (dp>ds) cout<<dp-ds; else cout<<ds-dp; return 0;}
using namespace std;
int main(){ int n, a[21][21], dp=0, ds=0; cin>>n; for (int i=1; i<=n; i++) for (int j=1; j<=n;j++) { cin>>a[i][j]; if (i==j) dp+=a[i][j]; if (i+j==n+1) ds+=a[i][j]; } if (dp>ds) cout<<dp-ds; else cout<<ds-dp; return 0;}
Anexe:
Ouroboros:
multumesc!
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Engleza,
9 ani în urmă
Matematică,
9 ani în urmă