Quote Originariamente inviata da breathof Visualizza il messaggio
ci ho provato, utilizzando il ciclo while e quindi la variabile booleana, mi potete dire se ho fatto bene? perchè mi esce sempre uno, anche quando è falso.



bool diag;
diag=true;
cout << "diagonale " ;
int j=0;
int i=0;


while (i<r && diag) {

while (j<r && diag) {
if (i==j){
if (M[i][j]!=1){
diag=false;
}

} else if (M[i][j]!=0){
diag=false;
}
j++;
}
i++;
}
cout << "risultato : " <<diag<< endl;
Dopo la prima iterazione j sarà sempre uguale a r, quindi non entrerai mai nel ciclo interno
P.s. usa i tag code