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
}
}
}
void MatriceUnitaria(int M[MAX][MAX], int r, int c)
{
int cont=0, cont0=0, tot;
for (int i=0; i
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
} cout
}
}