Ominide 1505 punti
Questo appunto contiene un allegato
Sommare numeri pari della prima diagonale (matrice) scaricato 0 volte

C++ - Sommare i numeri pari della prima diagonale (matrice)

// Sommare numeri pari 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);
int somma_prima_diagonale(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_prima_diagonale(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 (j==i)
{
if (m[j]%2==0)
{
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);
float somma=somma_prima_diagonale(matrice, righe, colonne);

cout<<endl<<"La somma e': "<<somma<<endl;

return 0;
}
// ----- /PROGRAMMA PRINCIPALE ----- //

Registrati via email