86 lines
2.0 KiB
C++
86 lines
2.0 KiB
C++
/*
|
|
Nome: Mario
|
|
Cognome: Montanari
|
|
Classe: 3AIN
|
|
Data: 13/12/2024
|
|
|
|
Contare i numeri pari e quelli dispari di una Matrice.
|
|
*/
|
|
|
|
#include <iostream>
|
|
#include <array>
|
|
#include <ctime>
|
|
#include <cstdlib>
|
|
#include <iomanip>
|
|
|
|
#define RIGHE 4
|
|
#define COLONNE 4
|
|
#define MINIMO -9
|
|
#define MASSIMO 9
|
|
|
|
using namespace std;
|
|
|
|
void riempiMatrice(int matrice[RIGHE][COLONNE], int righe, int colonne);
|
|
void stampaMatrice(int matrice[RIGHE][COLONNE], int righe, int colonne);
|
|
int contaPari(int matrice[RIGHE][COLONNE], int righe, int colonne);
|
|
int contaDispari(int matrice[RIGHE][COLONNE], int righe, int colonne);
|
|
|
|
int main(void) {
|
|
int matrice[RIGHE][COLONNE];
|
|
int righe = RIGHE;
|
|
int colonne = COLONNE;
|
|
|
|
riempiMatrice(matrice, righe, colonne);
|
|
|
|
cout << "Matrice: " << endl;
|
|
stampaMatrice(matrice, righe, colonne);
|
|
|
|
cout << "I numeri pari sono: " << contaPari(matrice, righe, colonne) << endl;
|
|
cout << "I numeri dispari sono: " << contaDispari(matrice, righe, colonne) << endl;
|
|
|
|
return 0;
|
|
}
|
|
|
|
void riempiMatrice(int matrice[RIGHE][COLONNE], int righe, int colonne) {
|
|
srand(time(NULL));
|
|
for (int r = 0; r < righe; r++) {
|
|
for (int c = 0; c < colonne; c++) {
|
|
matrice[r][c] = rand() % (MASSIMO - MINIMO + 1) + MINIMO;
|
|
}
|
|
}
|
|
}
|
|
|
|
void stampaMatrice(int matrice[RIGHE][COLONNE], int righe, int colonne) {
|
|
for (int r = 0; r < righe; r++) {
|
|
cout << endl;
|
|
for (int c = 0; c < colonne; c++) {
|
|
cout << setw(5) << matrice[r][c];
|
|
}
|
|
cout << endl;
|
|
}
|
|
cout << endl << endl << endl;
|
|
}
|
|
|
|
int contaPari(int matrice[RIGHE][COLONNE], int righe, int colonne) {
|
|
int contatorePari = 0;
|
|
for (int r = 0; r < righe; r++) {
|
|
for (int c = 0; c < colonne; c++) {
|
|
if (matrice[r][c] % 2 == 0) {
|
|
contatorePari++;
|
|
}
|
|
}
|
|
}
|
|
return contatorePari;
|
|
}
|
|
|
|
int contaDispari(int matrice[RIGHE][COLONNE], int righe, int colonne) {
|
|
int contatoreDispari = 0;
|
|
for (int r = 0; r < righe; r++) {
|
|
for (int c = 0; c < colonne; c++) {
|
|
if (matrice[r][c] % 2 != 0) {
|
|
contatoreDispari++;
|
|
}
|
|
}
|
|
}
|
|
return contatoreDispari;
|
|
} |