Dev c++; vedere se la matrice è diagonale;

di il
1 risposte

Dev c++; vedere se la matrice è diagonale;

Salve a tutti,
stavo scrivendo un programma per determinanare se la matrice è quadrata e in caso affermativo stabilire se è diagonale cioè quando gli elementi della diagonale sono uguali a uno e il resto è zero. Mi potete dare un mano per poterla scrivere? non capisco da dove poter partire






#include <iostream>
#include <cstdlib>

using namespace std;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {

const int MAXR=40;
const int MAXC=40;

double matrice[MAXR][MAXC];
int r;
int c;
int somma;
int diagonale;

cout << "matrice " << endl;

cout << "inserire il numero delle righe " << endl;
cin >> r;

cout << "inserire il numero delle colonne" << endl;
cin >> c;

//ingresso della matrice

for (int i=0;i<r;i++)
for (int j=0; j<c; j++) {

cout << "inserire l'elemento di posizione: [" << i << "][" << j << "]" << endl;
cin >> matrice[j];
}


cout << endl;
cout << endl;

cout << "STAMPO LA MATRICE" << endl;
for (int i=0;i<r;i++){
for (int j=0; j<c; j++)


cout << matrice[j] << ' ' ;
cout << endl;
}

cout << endl;
cout << endl;


if (c==r){

cout << "LA MATRICE E' QUADRATA!" << endl;

}
else {
cout << "la matrice non e' quadrata!!" << endl;
}

1 Risposte

  • Re: Dev c++; vedere se la matrice è diagonale;

    Ti ringrazio tantissimo, essendo alle prime armi non ho ancora molta praticità, sono al primo anno di università e ho da poco iniziato
    puoi vedere se ho fatto bene?


    bool flag=1;

    for (i=0; i<c; ++i)
    for (j=0; j<c; ++j)
    if ( i!=j && mat[j]!=0 )
    flag=0; else if (i==j && mat[j]!=1 ) flag=0;
    if (flag)
    cout << "matrice_diagonale " << endl;
    else
    cout << "matrice_NON_diagonale " << endl;
Devi accedere o registrarti per scrivere nel forum
1 risposte