Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/75: Рейтинг темы: голосов - 75, средняя оценка - 4.80
2 / 2 / 1
Регистрация: 24.02.2015
Сообщений: 206
1

Посчитать сумму элементов в каждом столбце и каждой строке матрицы

06.01.2016, 12:44. Показов 13803. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
вот условие:
2) Объявить двумерный массив и заполнить его построчно с клавиатуры. После заполнения – показать заполненную матрицу на экран и посчитать сумму элементов отдельно в каждом столбце и каждой строке.
Вот моё решение:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int mas[3][4];
    int sum = 0;
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cin >> mas[i][b];
        }
    }
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cout << mas[i][b] << " ";
        }
    }
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            while (mas[i][b] > 0)
            {
                sum += mas[i][b] % 10;
                mas[i][b] = mas[i][b] / 10;
            }
        }
    }
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cout << mas[i][b] << " ";
        }
    }
    system("pause");
    return 0;
}
Почему пишет нули?Дело в том что цикл while не успевает по второму кругу пройтись как индекс массива сменяется?Не нужно решать за меня,просто объясните в чём проблема.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.01.2016, 12:44
Ответы с готовыми решениями:

Посчитать сумму элементов заданной матрицы отдельно в каждом столбце и в каждой строке
Проблема: неправильный вывод программы. Задача: объявить двумерный массив заполнить его...

Найти сумму элементов в каждой строке матрицы, сумму элементов в каждом столбце, max элемент из сумм
Задан двумерный массив целых чисел размерности N на M, массив либо вводится пользователем, либо...

В каждом третьем столбце элементы матрицы заменить на 0, подсчитать сумму элементов в каждой чётной строке
Дана матрица размером MxN. В каждом 3-м столбце элементы матрицы заменить на 0, подсчитать сумму...

В каждом 3-ем столбце заменить элементы на сумму цифр в элементе и подсчитать сумму элементов в каждой в 3-ей строке
Дана матрица M x N. В каждом 3-ем столбце заменить элементы на сумму цифр в элементе и подсчитать...

3
505 / 317 / 236
Регистрация: 18.02.2013
Сообщений: 754
06.01.2016, 13:20 2
Лучший ответ Сообщение было отмечено G_Man002 как решение

Решение

должно быть так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int mas[3][4];
    int sum = 0;
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cin >> mas[i][b];
        }
    }
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cout << mas[i][b] << " ";
        }
    }
    for (int i = 0; i < 3; i++)
    {
        sum=0;
        for (int b = 0; b < 4; b++)
            sum += mas[i][b];
        cout<< "Summ of elements of "<<i+1<<" string is "<<sum<<endl;
    }
    for (int b = 0; b < 4; b++)
    {
        sum=0;
        for (int i = 0; i < 3; i++)
            sum += mas[i][b];
        cout<< "Summ of elements of "<<b+1<<" column is "<<sum<<endl;
    }
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cout << mas[i][b] << " ";
        }
    }
    system("pause");
    return 0;
}
Добавлено через 47 секунд
Цитата Сообщение от G_Man002 Посмотреть сообщение
C++
1
2
sum += mas[i][b] % 10;
                   mas[i][b] = mas[i][b] / 10;
а это для чего, если нужно посчитать суммы по строкам и столбцам?
1
2 / 2 / 1
Регистрация: 24.02.2015
Сообщений: 206
06.01.2016, 13:22  [ТС] 3
Цитата Сообщение от olya7 Посмотреть сообщение
а это для чего, если нужно посчитать суммы по строкам и столбцам?
Похоже я не понял задачу правильно.
0
365 / 321 / 219
Регистрация: 21.02.2013
Сообщений: 756
06.01.2016, 13:23 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int mas[3][4];
    int sum = 0;
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cin >> mas[i][b];
        }
    }
    for (int i = 0; i < 3; i++)
    {
        for (int b = 0; b < 4; b++)
        {
            cout << mas[i][b] << " ";
        }
    }
    cout << endl;
    for (int i = 0; i < 3; i++)
    {
sum = 0;
        for (int b = 0; b < 4; b++)
        {
            sum+= mas[i][b];
        }
        cout<< sum << " ";
    }
    cout << endl; sum = 0;
    for (int i = 0; i < 4; i++)
    {
sum = 0;
        for (int b = 0; b < 3; b++)
        {
            sum+= mas[b][i];
        }
        cout<< sum << " ";
    }
    //system("pause");
    return 0;
}
0
06.01.2016, 13:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.01.2016, 13:23
Помогаю со студенческими работами здесь

Массив из максимальных элементов в каждом столбце матрицы и минимальных элементов в каждой строке
заданная матрица q (k, n). найти значение максимального элемента в каждом столбце, значение...

Определить, сколько нулевых элементов содержится в каждом столбце и в каждой строке матрицы
Выполнить обработку элементов прямоугольной матрицы A, имеющей N строк и M столбцов. Определить,...

Дан двумерный массив, найдите номер первого отрицательного элемента в каждой строке, и сумму элементов в каждом столбце
Дан двуммерный массив ,найдите номер первого отрицательного элемента в каждой строке,и сумму...

Посчитать сумму элементов в каждой строке матрицы
Ввести квадратную матрицу размерностью 3Х3 и посчитать сумму элементов в каждой строке. Вывод в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru