Rendere opposti i valori della prima diagonale (matrice)
#include <iostream>
using namespace std;
// ----- Variabili globali ----- //
const int massimo=100;
// ----- /Variabili globali ----- //
// ----- Prototipi ----- //
int dimensione();
void caricamento_matrice(int [massimo][massimo], int, int);
void stampa_matrice(int [massimo][massimo], int, int);
void opposto(int [massimo][massimo], int, int);
// ----- /Prototipi ----- //
// ----- Funzioni ----- //
int dimensione()
{ int n;
cout<<"Inserisci il numero di righe e colonne: ";
cin>>n;
while (n>massimo)
{ cout<<"Errore. Inserisci il numero di righe: ";
cin>>n;
}
return n;
}
void caricamento_matrice(int m[massimo][massimo], int nr, int nc)
{ for (int i=0; i<nr; i++)
{ for (int j=0; j<nc; j++)
{ cout<<"Inserisci l'elemento della riga numero "<<i<<" e colonna
numero "<<j<<": ";
cin>>m[i][j];
}
}
}
void stampa_matrice(int m[massimo][massimo], int nr, int nc)
{ for (int i=0; i<nr; i++)
{ for (int j=0; j<nc; j++)
{ cout<<m[i][j]<<"\t";
}
cout<<endl;
}
}
void opposto(int m[massimo][massimo], int nr, int nc)
C++ - Rendere opposti i valori della prima diagonale (matrice)
// Rendere opposti i valori della prima diagonale (matrice) #include <iostream> using namespace std; // ----- Variabili globali ----- // const int massimo=100; // ----- /Variabili globali ----- //
// ----- Prototipi ----- // int dimensione(); void caricamento_matrice(int [massimo][massimo], int, int); void stampa_matrice(int [massimo][massimo], int, int); void opposto(int [massimo][massimo], int, int); // ----- /Prototipi ----- //
// ----- Funzioni ----- // int dimensione() { int n; cout<<"Inserisci il numero di righe e colonne: "; cin>>n; while (n>massimo) { cout<<"Errore. Inserisci il numero di righe: "; cin>>n; } return n; } void caricamento_matrice(int m[massimo][massimo], int nr, int nc) { for (int i=0; i<nr; i++) { for (int j=0; j<nc; j++) { cout<<"Inserisci l'elemento della riga numero "<<i<<" e colonna numero "<<j<<": "; cin>>m[j]; } } } void stampa_matrice(int m[massimo][massimo], int nr, int nc) { for (int i=0; i<nr; i++) { for (int j=0; j<nc; j++) { cout<<m[j]<<"\t"; } cout<<endl; } } void opposto(int m[massimo][massimo], int nr, int nc) { for (int i=0; i<nr; i++) { for (int j=0; j<nc; j++) { if (j==i) { m[j]=m[j]*(-1); } } } } // ----- /Funzioni ----- //
// ----- Programma principale ----- // int main() { int matrice[massimo][massimo]; int righe=dimensione(); int colonne=righe; cout<<endl; caricamento_matrice(matrice, righe, colonne); cout<<endl<<"Matrice caricata: "<<endl; stampa_matrice(matrice, righe, colonne); opposto(matrice, righe, colonne); cout<<endl<<"Risultato: "<<endl; stampa_matrice(matrice, righe, colonne); return 0; } // ----- /Programma principale ----- //