• Предмет: Информатика
  • Автор: nmarcuk690
  • Вопрос задан 3 месяца назад

На С++
Побудувати двовимірний масив розміром 5х5 і заповнити цілими числами в діапазоні від -20 до +20 (якщо рандомно - вивести на екран). Для масиву виконати дії, описані нижче. Після кожної дії потрібно вивести результуючий масив. Кожну дію робити в окремому файлі, на початку програми в коментарі писати умову. Програми записати в зошит (надрукувати)

Обчислити суму значень усіх елементів.

Обчислити добуток елементів, більших від 0.5.

Обчислити кількість ненульових елементів.

Замінити всі від'ємні елементи нулями та порахувати скільки їх було.

Обчислити середнє арифметичне всіх елементів.

Знайти середнє арифметичне додатних елементів.

Ответы

Ответ дал: ananimus333333
0

Ответ:

#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

const int ROWS = 5;

const int COLS = 5;

// Функція для заповнення масиву випадковими числами в діапазоні від -20 до +20

void fillArray(int arr[ROWS][COLS]) {

   srand(time(0));

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           arr[i][j] = rand() % 41 - 20;

       }

   }

}

// Функція для виведення масиву на екран

void printArray(int arr[ROWS][COLS]) {

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           cout << arr[i][j] << " ";

       }

       cout << endl;

   }

}

// Функція для обчислення суми всіх елементів масиву

int sumOfElements(int arr[ROWS][COLS]) {

   int sum = 0;

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           sum += arr[i][j];

       }

   }

   return sum;

}

// Функція для обчислення добутку елементів, більших від 0.5

int productOfElementsGreaterThan05(int arr[ROWS][COLS]) {

   int product = 1;

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           if (arr[i][j] > 0.5) {

               product *= arr[i][j];

           }

       }

   }

   return product;

}

// Функція для обчислення кількості ненульових елементів

int countNonZeroElements(int arr[ROWS][COLS]) {

   int count = 0;

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           if (arr[i][j] != 0) {

               count++;

           }

       }

   }

   return count;

}

// Функція для заміни всіх від'ємних елементів нулями та обчислення їх кількості

int replaceNegativeElementsWithZeros(int arr[ROWS][COLS]) {

   int count = 0;

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           if (arr[i][j] < 0) {

               arr[i][j] = 0;

               count++;

           }

       }

   }

   return count;

}

// Функція для обчислення середнього арифметичного всіх елементів

double averageOfAllElements(int arr[ROWS][COLS]) {

   int sum = sumOfElements(arr);

   return static_cast<double>(sum) / (ROWS * COLS);

}

// Функція для обчислення середнього арифметичного додатних елементів

double averageOfPositiveElements(int arr[ROWS][COLS]) {

   int sum = 0;

   int count = 0;

   for (int i = 0; i < ROWS; i++) {

       for (int j = 0; j < COLS; j++) {

           if (arr[i][j] > 0) {

               sum += arr[i][j];

               count++;

           }

       }

   }

   if (count == 0) {

       return 0.0; // Щоб уникнути ділення на нуль

   }

   return static_cast<double>(sum) / count;

}

int main() {

   int arr[ROWS][COLS];

   // Заповнюємо масив випадковими числами

   fillArray(arr);

   cout << "Початковий масив:" << endl;

   printArray(arr);

   cout << "Сума всіх елементів: " << sumOfElements(arr) << endl;

   cout << "Добуток елементів, більших від 0.5: " << productOfElementsGreaterThan05(arr) << endl;

   cout << "Кількість ненульових елементів: " << countNonZeroElements(arr) << endl;

   int negCount = replaceNegativeElementsWithZeros(arr);

   cout << "Кількість замінених від'ємних елементів на нулі: " << negCount << endl;

   cout << "Середнє арифметичне всіх елементів: " << averageOfAllElements(arr) << endl;

   cout << "Середнє арифметичне додатних елементів: " << averageOfPositiveElements(arr) << endl;

   return 0;

}

Объяснение:

Вас заинтересует