Salve, oggi stavo provando a fare un programma in c++ che mi dicesse se una matrice letta da input ha la diagonale principale in ordine crescente oppure no.
codice:void diagonale_ord(int x[][3], int n) { int verif = 0; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) { if (i == j) { if (x[i][j] > x[i + 1][j + 1]) verif = 1; } } if (verif == 0) cout << "Diagonale ordinata" << endl; else cout << "Diagonale non ordinata" << endl; }
So che non va bene perché mi dice che è ordinata anche se solo gli ultimi due elementi sulla diagonale sono in ordine mentre gli altri non lo sono.
Però non capisco come evitare che vengano valutati solo gli ultimi due elementi