In: Computer Science
Write a code to initialize a 2D array with random integers (not has to be different). Write a function to count the number of cells that contain an even number within the 2D array.
C++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
#define ROWS 3
#define COLUMNS 4
int count_evens(int arr[ROWS][COLUMNS]) {
int count = 0;
for (int i = 0; i < ROWS; ++i) {
for (int j = 0; j < COLUMNS; ++j) {
if (arr[i][j] % 2 == 0) {
++count;
}
}
}
return count;
}
int main() {
srand(time(NULL));
// create and populate a 2d array with random data
int arr[ROWS][COLUMNS];
for (int i = 0; i < ROWS; ++i) {
for (int j = 0; j < COLUMNS; ++j) {
arr[i][j] = rand() % 100;
}
}
// print array
cout << "2D array is" << endl;
for (int i = 0; i < ROWS; ++i) {
for (int j = 0; j < COLUMNS; ++j) {
cout << arr[i][j] << " ";
}
cout << endl;
}
// print number of evens
cout << "Number of even numbers in array is " << count_evens(arr) << endl;
return 0;
}
