Sommare i numeri dispari della seconda 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);
int somma_dispari(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;
}
}
int somma_dispari(int m[massimo][massimo], int nr, int nc)
{ int x=0;
C++ - Sommare i numeri dispari della seconda diagonale
// Sommare i numeri dispari della seconda 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); int somma_dispari(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; } } int somma_dispari(int m[massimo][massimo], int nr, int nc) { int x=0; for (int i=0; i<nr; i++) { for (int j=0; j<nc; j++) { if (i+j==nr-1) { if (m[j]%2==1) { x=x+m[j]; } } } } return x; } // ----- /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); int somma=somma_dispari(matrice, righe, colonne); cout<<endl<<"Risultato: "<<somma<<endl; return 0; } // ----- /Programma principale ----- //