deny_1515
Ominide
1 min. di lettura
Vota 2,5 / 5

Concetti Chiave

  • Il programma è progettato per lavorare con matrici di dimensione massima 50x50.
  • La funzione Dimensionamento() richiede all'utente di inserire una dimensione valida, ripetendo la richiesta finché il valore non rientra nei limiti.
  • CaricaMatrice() permette all'utente di inserire i valori per riempire la matrice, iterando attraverso righe e colonne.
  • MatriceUnitaria() verifica se la matrice è unitaria, controllando che gli elementi sulla diagonale siano 1 e gli altri 0.
  • La funzione Stampa() stampa i valori della matrice, iterando attraverso le sue righe e colonne.

#include
#define MAX 50
using namespace std;

int Dimensionamento();
void CaricaMatrice(int M[MAX][MAX], int r, int c);
void MatriceUnitaria(int M[MAX][MAX], int r, int c);
void Stampa(int M[MAX][MAX], int r, int c);

int main()
{
int r, c, M[MAX][MAX];
cout r=Dimensionamento();
cout c=Dimensionamento();
CaricaMatrice(M, r, c);
if(r==c){
MatriceUnitaria(M, r, c);
}
else {
cout }
Stampa(M, r, c);
}

int Dimensionamento()
{
int d;
do{
cin>>d;
} while ((dMAX));
return d;
}

void CaricaMatrice(int M[MAX][MAX], int r, int c)
{
for(int i=0; i for(int q=0; q cin>>M[q];
}
}
}

void MatriceUnitaria(int M[MAX][MAX], int r, int c)
{
int cont=0, cont0=0, tot;
for (int i=0; i for(int j=0; j if((i==j)&&(M[j]==1)){
cont++;
}
if(M[j]==0){
cont0++;
}
}
}
tot=r*c-r;
if((cont==r)&&(cont0==tot)){
cout }
else{
cout }
}

void Stampa(int M[MAX][MAX], int r, int c)
{
for (int i=0; i for (int q=0; q cout cout[q];
} cout }
}

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community