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

Найти сумму элементов массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дано натуральное число N (N> 9). Определить количество нулей в цифровой записи числа http://www.cyberforum.ru/cpp-beginners/thread1187619.html
Буду очень благодарен за помощь! Дано натуральное число N (N> 9). Определить количество нулей в цифровой записи числа, кроме нулей в младших разрядах. Пример. N=10 025 000. Количество нулей равно...
C++ Сеть и интернет Постепенно перестал работать провод интернета в роутере,просто индикатор мигает с промежутком в секунду а то и больше,а если подключаться на прямую к ПК то не видит сети.Какая может быть проблема в... http://www.cyberforum.ru/cpp-beginners/thread1187613.html
C++ Функция перезаписывает символы строки заданным количеством символов другой строки
Программа работает. Но не совсем правильно. В конечной строке появляются непонятные символы, которых быть там не должно. В программе нельзя использовать string.h #include <iostream> using...
Поиск слова и оканчание массива C++
Задание такое Ввести слово, массив символов разделителей с заданным количеством символов и массив строк текста, содержащей некоторое но не больше заданого количество строк. Признаком оканчания ввода...
C++ Определить число узлов в дереве с одной ветвью http://www.cyberforum.ru/cpp-beginners/thread1187599.html
Помогите написать часть кода, с помощью которого можно определить число узлов дерева,в которых содержится указатель только на одну ветвь. спс.
C++ Поменять местами элементы очереди Хай всем мне нужно в однонаправленной очереди поменять первый и минимальный элемент, как это сделать? подробнее

Показать сообщение отдельно
kivalrd
0 / 0 / 0
Регистрация: 03.11.2013
Сообщений: 50

Найти сумму элементов массива - C++

25.05.2014, 16:38. Просмотров 268. Ответов 2
Метки (Все метки)

Друзья, помогите с задачей.
Условие: Дана матрица 5х5, найти сумму элементов заштрихованной области (изображение в прикреплённом файле).

В общем, идея у меня появилась одна: найти сумму области выше главной диагонали до ниже противоположной диагонали, вместе с ней включительно.
Т.е. это условие i < j - для элементов выше главной диагонали, и i + j > n + 1 - для элементов ниже противоположной диагонали.
Беда в том, что не знаю как это реализовать. Как сделать, чтобы посчитало сумму области выше главной диагонали до области ниже противоположной диагонали, соответственно всё наоборот?

Пробовал написать код, для проверки, чтобы просто заполнить эти области 1 и 0 (главное чтобы работало, найти сумму не составит труда), и всё не то... В общем, запутался с этой задачей.
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
#include <iostream>
#include <iomanip>
using namespace std;
 
int main()
{
    const int n = 5;
    int a[n][n],
    int b[n][n] = {{5, 5, 5, 5, 5},
                   {5, 5, 5, 5, 5},
                   {5, 5, 5, 5, 5},
                   {5, 5, 5, 5, 5},
                   {5, 5, 5, 5, 5}};
 
    for (int i = 0; i < n; i++)
        for (int j = 0; j < n; j++)
            a[i][j] = b[i][j];
 
// Заполняем массив а
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            if (i < j) // выше главной диагонали
                a[i][j] = 0;
            if (i + j > n + 1) //до и ниже провоположной диагонали
                a[i][j] = 1;
        }
    }
 
// Выводим массив а
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
            cout << setw (2) << a[i][j];
        cout << endl;
    }
    return 0;
}
0
Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru