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

Задача 5. Двумерный массив (3 балла)
Задан целочисленный двумерный массив, состоящий из N строк и M столбцов. Требуется
вычислить сумму элементов в каждой строке и в каждом столбце.
Входные данные
Первая строка содержит два натуральных числа N и M – количество строк и столбцов двумерного
массива. В каждой из последующих N строк записаны M целых чисел – элементы массива. Все числа во
входных данных не превышают 100 по абсолютной величине.
Выходные данные
В первой строке выведите N чисел – суммы элементов массива для каждой строки в отдельности.
Во второй строке в аналогичном формате выведите M чисел – суммы элементов для каждого столбца.
Третья строка должна быть пустой, а далее должны следовать N строк по M чисел – исходный массив,
определенный во входных данных.
Пример

Входные
данные
Выходные
данные
1
3 4
5 9 2 6
6 2 4 3
1 2 8 7
22 15 18
12 13 14 16
5 9 2 6
6 2 4 3
1 2 8 7

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

using namespace std;

int main() {
    int n,m;
    cin gt;gt; n gt;gt; m;
    int a[n][m], sn[n], sm[m]; //sn - сумма строк, sm  - сумма столбцов
    memset(sn, 0, n*sizeof(int));
    memset(sm, 0, m*sizeof(int));
    for(int i = 0; i lt; n; i++)
        for(int j = 0; j lt; m; sn[i]+= a[i][j], sm[j]+= a[i][j], j++)
            cin gt;gt; a[i][j];
    cout lt;lt; endl;
    for(int i = 0; i lt; n; i++) cout lt;lt; sn[i] lt;lt; ;
    cout lt;lt; endl lt;lt; endl;
    for(int i = 0; i lt; m; i++) cout lt;lt; sm[i] lt;lt; ;
    cout lt;lt; endl lt;lt; endl;
    for(int i = 0; i lt; n; i++) {
        for(int j = 0; j lt; m; j++)
            cout lt;lt; a[i][j] lt;lt; ;
        cout lt;lt; endl;
    }   
}
171
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам