Вопрос задан 23.07.2023 в 18:09. Предмет Информатика. Спрашивает Merkulova Arina.

C++. Дан двумерный массив a, где число столбиков и строчек не больше чем 10. В нем надо найти

наименьший элемент и зафиксировать столбик, где он есть.Зафиксировав, в нем найти среднее положительных элементов (если среднего арифм. нет - то 0). Вывести наименьший элемент всего массива, и среднее зафиксированного столбца. Все это с фунцией void. Буду очень благодарна! Это очень важно.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Милкович Аня.

Код прекреплен файлом. В программе существуют следующие ф-ции

  • fillByRandomNumbers - заполнить двумерный массив случайными числами, массив может быть размерами от 1 сроки до 10 строк и от 1 столбца до 10 столбцов
  • show - функция выводит в iostream размеры двумерного массива, а так же его самого
  • getIndexOfColumnsWithMinElement - функция возращает коллекцию индексов столбцов, в которых было найдено самое малое значение массива (это нужно для того, что в массиве может быть несколько столбцов с одинаковым минимальным значением)
  • getAverageValueOfPositiveElementsFromColumn - функция ищет среднее значение столбца двумерного массива по его индексу
  • main - основная функция программы, тут содержиться основная логика

При возникновении вопросов - пишите в комментарии.


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Хорошо, вот пример кода на C++, который решает задачу, описанную вами:

cpp
#include <iostream> using namespace std; const int MAX_ROWS = 10; const int MAX_COLS = 10; // Функция для нахождения наименьшего элемента и его столбца void findMinElementAndColumn(int a[MAX_ROWS][MAX_COLS], int rows, int cols, int& minElement, int& minColumn) { minElement = a[0][0]; minColumn = 0; for (int i = 0; i < rows; ++i) { for (int j = 0; j < cols; ++j) { if (a[i][j] < minElement) { minElement = a[i][j]; minColumn = j; } } } } // Функция для нахождения среднего положительных элементов в столбце double findAveragePositiveElements(int a[MAX_ROWS][MAX_COLS], int rows, int cols, int column) { int sum = 0; int count = 0; for (int i = 0; i < rows; ++i) { if (a[i][column] > 0) { sum += a[i][column]; ++count; } } if (count == 0) { return 0.0; // Если положительных элементов нет, возвращаем 0 } return static_cast<double>(sum) / count; } int main() { int rows, cols; cout << "Введите количество строк и столбцов (не больше 10): "; cin >> rows >> cols; if (rows <= 0 || rows > MAX_ROWS || cols <= 0 || cols > MAX_COLS) { cout << "Ошибка: неверные размеры массива!" << endl; return 1; } int a[MAX_ROWS][MAX_COLS]; cout << "Введите элементы массива:" << endl; for (int i = 0; i < rows; ++i) { for (int j = 0; j < cols; ++j) { cin >> a[i][j]; } } int minElement, minColumn; findMinElementAndColumn(a, rows, cols, minElement, minColumn); double average = findAveragePositiveElements(a, rows, cols, minColumn); cout << "Наименьший элемент всего массива: " << minElement << endl; cout << "Среднее положительных элементов в столбце " << minColumn << ": " << average << endl; return 0; }

Этот код считывает размеры двумерного массива и его элементы с консоли, затем находит наименьший элемент и соответствующий столбец с помощью функции findMinElementAndColumn. Затем вызывает функцию findAveragePositiveElements для нахождения среднего положительных элементов в найденном столбце. В конце выводит результаты на экран.

Убедитесь, что входные данные соответствуют условиям задачи, и запустите код.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос