0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 15
1

Дан массив A(n,n). Найти сумму всех его элементов, расположенных выше диагонали, противоположной главной

11.02.2013, 17:10. Показов 5266. Ответов 5
Метки нет (Все метки)

Дан массив A(n,n). Найти сумму всех его элементов, расположенных выше диагонали, противоположной главной.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2013, 17:10
Ответы с готовыми решениями:

Найти сумму всех элементов массива, расположенных ниже диагонали, противоположной главной
Дан массив А(н,н). Найти сумму всех его элементов, расположенных ниже диагонали, противоположной...

Дан двумерный массив вещественных чисел. Найти сумму элементов, расположенных выше главной диагонали
дан двумерный массив вещественных чисел.Найти сумму элементов,расположенных выше главной диагонали

Найти сумму всех элементов массива , расположенных выше главной диагонали
Дан массив А(n,n) . Найти сумму всех элементов массива , расположенных выше главной диагонали ....

Матрица. Найти сумму всех элементов, расположенных на главной диагонали и выше ее
Найти сумму всех элементов , расположенных на главной диагонали и выше ее матрицы размером 6*6,...

5
171 / 79 / 4
Регистрация: 05.12.2012
Сообщений: 217
11.02.2013, 17:35 2
Предположим, что диагональ противоположная главной - это вторая главная диагональ. Тогда все просто:
C++
1
2
3
4
5
6
7
8
yourType sum = 0;
for ( int i = 0; i < n; ++i )
{
     for ( int j = 0; j < n - i - 1; ++j )
     {
          sum += A[ i ][ j ];
     }
}
Вроде так. Для проверки достаточно подставить 2 конкретных значения для і и посмотреть, как меняются j в цикле и по факту.
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 15
11.02.2013, 18:47  [ТС] 3
Примерно так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream.h>
#include<math.h>
int main()
{
        int i,j,sum;
        int a[3][3];
        sum=0;
      
        for (i=0;i<3;++i)
     for (j=0;j<3-i-1;++j)
                {
                        cout<<"a["<<i<<"]["<<j<<"]=";
                        cin>>a[i][j];
                }
 for (i=0;i<3;++i)
     for (j=0;j<3-i-1;++j)
       
                    if (j>i) 
                    sum=sum+a[i][j];
        cout << sum;
        return 0;
}
0
2 / 2 / 1
Регистрация: 11.02.2013
Сообщений: 8
11.02.2013, 19: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
45
46
47
48
49
50
51
52
53
#include <iostream>
 
using namespace std;
 
int sum(int **array, int size) // вычисляет сумму выше диагонали
{
int summa = 0, i=0, p=0, count = size ;
 
for (i=0; i < size; ++i)
{
    for (p = 0; p < count; ++p)
    {
        summa += array[i][p];
    }
    count--;
}
 
return summa;
 
}
 
int main()
{
int size = 0, i=0 , k=0, j=0, d=0;
 
cout<<"Enter N"<<endl; // вводим размер массива n
cin >> size;
    
int **A = new int*[size];
 
for(i=0; i<size; ++i)
{
    A[i]= new int[size]; //выделяем память для массива
}
 
for (k=0; k<size;++k)
{
    for(j=0; j<size; ++j)
    {
        A[k][j]=d; //забиваем значения в массив для проверки A[0][0]=0, A[0][1]=1 и тд
        d++;
    }
}
 
cout<<"Sum = "<<sum(A,size)<<endl; //вычисляем сумму и выводим результат
 
for (k=0; k<size;++k)
    delete [] A[k];
 
delete [] A; //освобождаем память
 
return 1;
}
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 15
11.02.2013, 19:30  [ТС] 5
Мой код неправильный?
0
2 / 2 / 1
Регистрация: 11.02.2013
Сообщений: 8
11.02.2013, 21:56 6
нет... ваш исправленный код:

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
#include<iostream>
 
using namespace std;
 
int main()
{
int i,j,sum=0;
int a[3][3];
      
for (i=0;i<3;++i)
    for (j=0;j<3;++j)
     {
          cout<<"a["<<i<<"]["<<j<<"]=";
          cin>>a[i][j];
     }
 
 for (i=0;i<3;++i)
     for (j=0;j<3-i-1;++j)
          sum=sum+a[i][j];
    
        cout << sum;
        
        return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2013, 21:56
Помогаю со студенческими работами здесь

Найти сумму всех положительных элементов матрицы, расположенных выше главной диагонали
Нужно найти сумму всех положительных элементов матрицы, расположенных выше главной диагонали. Sub...

Сгенерировать массив из случайных чисел, найти сумму элементов расположенных выше главной диагонали в строках, начинающихся с нуля
Вид массива: _______ 0001 4321 0321 0021 _______ Сгенерировать массив из случайных чисел,...

В двухмерном массиве вычислить сумму всех элементов, расположенных выше главной диагонали
Сделайте пожалуйста В двухмерном массиве вычислить сумму всех элементов, расположенных выше...

В двумерном массиве вычислить сумму всех элементов, расположенных выше главной диагонали.
В двумерном массиве вычислить сумму всех элементов, расположенных выше главной диагонали. ...

В двухмерном массиве вычислить произведение всех элементов, расположенных ниже диагонали, противоположной главной
В двухмерном массиве вычислить произведение всех элементов, расположенных ниже диагонали,...

Найти сумму элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали
Дана целочисленная квадратная матрица размера n  m (n, m вводятся). Значения элементов матрицы...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru