Форум программистов, компьютерный форум CyberForum.ru

Массив: Вычислить сумму элементов главной диагонали матрицы. - C++

Восстановить пароль Регистрация
 
паникер
0 / 0 / 0
Регистрация: 21.10.2013
Сообщений: 6
26.10.2013, 19:58     Массив: Вычислить сумму элементов главной диагонали матрицы. #1
1.Вычислить сумму элементов главной диагонали матрицы.
2.Сосчитать количество отрицательных элементов матрицы, значения которых не превышают заданное число
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2013, 19:58     Массив: Вычислить сумму элементов главной диагонали матрицы.
Посмотрите здесь:

C++ Вычислить сумму элементов матрицы M(9х9),лежащих справа от главной диагонали
C++ [C++] Вычислить сумму и среднее значение элементов матрицы, расположенных на главной диагонали и ниже ее
C++ Вычислить в функции сумму модулей элементов выше главной диагонали матрицы
C++ Вычислить сумму элементов выше главной диагонали матрицы
C++ Массив: Вычислить сумму элементов, лежащих на главной диагонали матрицы {Cÿ}, образованной следующим образом: Cÿ = aÿ + bÿ
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sovaz1997
CEO SOVAZ Corp.
 Аватар для sovaz1997
379 / 225 / 2
Регистрация: 17.12.2011
Сообщений: 816
Записей в блоге: 1
26.10.2013, 20:08     Массив: Вычислить сумму элементов главной диагонали матрицы. #2
1)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main()
{
    const int N = 5;
 
    int arr[N][N] = {-5, -9, -6, 3, 4, 9, 2, 3, 5, 7, 8, 0, 3, 5, -9, -9, 6, 3, 4, 7, 5, 8, 2, 1, 0};
 
    int result = 0;
    for(int i = 0; i < N; ++i) {
        result += arr[i][i];
    }
 
    cout << result;
}


Добавлено через 2 минуты
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
#include <iostream>
 
using namespace std;
 
int main()
{
    const int N = 5;
    int num = -6;
 
    int arr[N][N] = {-5, -9, -6, 3, 4, 9, 2, 3, 5, 7, 8, 0, 3, 5, -9, -9, 6, 3, 4, 7, 5, 8, 2, 1, 0};
 
    int result = 0;
 
    for(int i = 0; i < N; ++i) {
        for(int j = 0; j < N; ++j) {
            if(arr[i][j] <= num && arr[i][j] < 0 ) {
                result += arr[i][j];
            }
        }
    }
 
    cout << result;
}
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
26.10.2013, 23:20     Массив: Вычислить сумму элементов главной диагонали матрицы. #3
Цитата Сообщение от sovaz1997 Посмотреть сообщение
int arr[N][N] = {-5, -9, -6, 3, 4, 9, 2, 3, 5, 7, 8, 0, 3, 5, -9, -9, 6, 3, 4, 7, 5, 8, 2, 1, 0};
Извиняюсь, а как в матрицу попадет одномерный массив?
Olivеr
 Аватар для Olivеr
411 / 407 / 13
Регистрация: 06.10.2011
Сообщений: 830
26.10.2013, 23:39     Массив: Вычислить сумму элементов главной диагонали матрицы. #4
Цитата Сообщение от MrGrig Посмотреть сообщение
Извиняюсь, а как в матрицу попадет одномерный массив?
многомерные массивы в стеке хранятся последовательно
MrGrig
176 / 159 / 2
Регистрация: 08.10.2012
Сообщений: 422
26.10.2013, 23:43     Массив: Вычислить сумму элементов главной диагонали матрицы. #5
Цитата Сообщение от Olivеr Посмотреть сообщение
многомерные массивы в стеке хранятся последовательно
не знал, а что будет если ввести больше/меньше чем есть?

при меньшем, видимо в оставшихся полях будет мусор, а что будет при большем? куда из стэка они могут попасть?
Olivеr
 Аватар для Olivеr
411 / 407 / 13
Регистрация: 06.10.2011
Сообщений: 830
26.10.2013, 23:58     Массив: Вычислить сумму элементов главной диагонали матрицы. #6
Цитата Сообщение от MrGrig Посмотреть сообщение
не знал, а что будет если ввести больше/меньше чем есть?

при меньшем, видимо в оставшихся полях будет мусор, а что будет при большем? куда из стэка они могут попасть?
может случится что угодно. в любом случае это будет грубой ошибкой.
Yandex
Объявления
26.10.2013, 23:58     Массив: Вычислить сумму элементов главной диагонали матрицы.
Ответ Создать тему
Опции темы

Текущее время: 11:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru