Регистрация
Войти
Стать экспертом Правила
Информатика

Напишите код программы на c++ для решения следующей задачи: дана матрица размером m*n. Вычислите суммы элементов каждого столбца. Определите наибольшее значение этих сумм и номер соответствующего столбца.

ОТВЕТЫ
#include lt;iostreamgt;

using namespace std;


int main()
{
    int m, n;

    // Выделение памяти и ввод матрицы
    cout lt;lt; "m = ";
    cin gt;gt; m;
    cout lt;lt; "n = ";
    cin gt;gt; n;

    int **matrix = new int*[m];
    for (int i = 0; i lt; m; ++i)
    {
        matrix[i] = new int[n];
        for (int j = 0; j lt; n; ++j)
            cin gt;gt; matrix[i][j];
    }

    // Вычисление суммы элементов каждого столбца. Определение наибольшего
    // значения этих сумм и номер соответсвующего столбца
    int sum, max_sum = INT_MIN, max_column;
    for (int j = 0; j lt; n; ++j)
    {
        sum = 0;
        for (int i = 0; i lt; m; ++i)
            sum += matrix[i][j];
        cout lt;lt; "Column " lt;lt; j lt;lt; " - sum " lt;lt; sum lt;lt; endl;
        
        if (sum gt; max_sum)
        {
            max_sum = sum;
            max_column = j;
        }
    }
    cout lt;lt; "Max sum in column " lt;lt; max_column lt;lt; ". Max sum is " lt;lt; max_sum lt;lt; "." lt;lt; endl;

    // Удаление матрицы
    for (int i = 0; i lt; m; ++i)
        delete[] matrix[i];
    delete[] matrix;
}
96
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам