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

Ответы на вопрос

Ответ:
#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;
}
Объяснение:



Для початку, ми будемо створювати двовимірний масив розміром 5х5 та заповнювати його цілими числами в діапазоні від -20 до 20 (за допомогою функції rand()). Після цього ми виконаємо різні дії з цим масивом у окремих програмах.
1. Обчислити суму значень усіх елементів масиву. 2. Обчислити добуток елементів, які більші за 0.5. 3. Обчислити кількість ненульових елементів. 4. Замінити всі від'ємні елементи на нулі та порахувати, скільки їх було. 5. Обчислити середнє арифметичне всіх елементів. 6. Знайти середнє арифметичне додатних елементів.
Кожну з цих дій ми виконаємо в окремому файлі програми та виведемо результатуючий масив після кожної дії. Таким чином, ми отримаємо результати кожної з цих операцій для нашого початкового масиву.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili