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

Двумерный массив: целочисленная квадратная матрица - C++

Восстановить пароль Регистрация
 
Best-pm07
..:::BesT:::..
 Аватар для Best-pm07
7 / 7 / 1
Регистрация: 19.03.2009
Сообщений: 195
11.06.2010, 13:48     Двумерный массив: целочисленная квадратная матрица #1
Данная целочисленные квадратная матрица.
Вычислить:
1) сумму элементов в тех строках, которые не содержат отрицательных элементов
2) минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.
Вот ещё программка нужна, теперь уже массив двумерный
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2010, 13:48     Двумерный массив: целочисленная квадратная матрица
Посмотрите здесь:

Целочисленная квадратная матрица C++
квадратная целочисленная матрица C++
C++ Целочисленная квадратная матрица
Целочисленная квадратная матрица C++
C++ Двумерный массив(квадратная матрица)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
11.06.2010, 15:57     Двумерный массив: целочисленная квадратная матрица #2
у меня есть код для такого условия:
Дана целочисленная квадратная матрица. Определить:
1. сумму элементов в тех столбцах, которые не содержат отрицательных элементов;
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>
#include <stdlib.h>
#include <math.h>
#include<clocale>
#include <iomanip>
using namespace std;
//сумма элементов
 
int summa (int **ar,int n)
{int k,sum,i,j;
for (i=0;i<=n; i++) {
k=1; sum=0;
  for (j=0;j<=n; j++)
  {
      if (ar[j][i]<0){
         sum=0; break; }else 
        sum+=ar[j][i]; }
  cout<<sum<<' '; }
 
return(0);
}
// минимум сум диагоналей
int minimum(int **ar, int n)
{
int i = 0;
int j = 0;
int k = 0;
long currsum = 0;
long maxsum = ar[n][n]; 
// Пробегаем левую верхнюю часть матрицы
for ( i = 0; i < n; i++)
{
long currsum = 0;
for ( j = i, k = 0; (j >= 0) && (k <= i); j--, k++)
{
currsum += abs(ar[j][k]);
}
if (currsum < maxsum)
maxsum = currsum;
}
// Пробегаем правую нижнюю часть матрицы
for ( i = n; i >= 1; i--)
{
long currsum = 0;
for ( j = i, k = n; (j <= n) && (k >= i); j++, k--)
{
currsum += abs(ar[j][k]);
} 
if (currsum < maxsum)
maxsum = currsum;
} 
 
return(maxsum);
}
int main()
{setlocale(LC_ALL, "rus");
int i,j,n,h,d;
cin>>n;
//создаю матрицу
int **ar=new int *[n];
for (i=0;i<=n; i++)
ar[i]= new int [n];
n=n-1;
//ввод элементов
for (i=0;i<=n; i++)
for (j=0;j<=n; j++)
cin>>ar[i][j];cout<<"----------------------Результат----------------------\n";
// вызов функций
h=summa(ar,n);
d=minimum(ar,n);
cout<<"min="<<   setw(3)<<d<<endl;
 
//освобождаю память
for (i=0;i<=n; i++)
delete [] ar[i];
return(0);
}
Best-pm07
..:::BesT:::..
 Аватар для Best-pm07
7 / 7 / 1
Регистрация: 19.03.2009
Сообщений: 195
12.06.2010, 11:14  [ТС]     Двумерный массив: целочисленная квадратная матрица #3
Всё равно я что-то не помню правильно она работает или нет, да и переделать не пойму как
помогите, кто чем может ещё...
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2294 / 1664 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
12.06.2010, 11:49     Двумерный массив: целочисленная квадратная матрица #4
Цитата Сообщение от Best-pm07 Посмотреть сообщение
сумму элементов в тех строках, которые не содержат отрицательных элементов
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <algorithm>
#include <functional>
 
int Sum(const int* const* matrix, size_t n, size_t m) {
  int result = 0;
  
  for (size_t i = 0; i < n; ++i)
    if (std::find_if(matrix[i], matrix[i] + m, std::bind2nd(std::less<int>(), 0)) == matrix[i] + m)
      result += std::accumulate(matrix[i], matrix[i] + m, 0);
 
  return result;
}
Best-pm07
..:::BesT:::..
 Аватар для Best-pm07
7 / 7 / 1
Регистрация: 19.03.2009
Сообщений: 195
13.06.2010, 14:29  [ТС]     Двумерный массив: целочисленная квадратная матрица #5
CyBOSSeR, не пойму с библиотеками и код не пойму(
обычно работаю только с iostream
может кто ещё поможет? а за одно и попрактикуется?

Добавлено через 37 минут
вот код, который:
определяет максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы
Мне нужно переделать, чтобы определяло минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы и + Соединить с первой частью задания от кода //Александр
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
#include <iostream.h>
#include <stdlib.h>
void main()
{
          int i=0,j=0,n=1;
          int max=0, temp=0;
          int array_a[6][6];
          for(i=0;i<6;i++)
                     for(j=0;j<6;j++)
                            array_a[i][j]=rand()%10;
          for(i=0;i<6;i++)
          {
                for(j=0;j<6;j++)
                            cout<<array_a[i][j]<<" ";
                cout<<"\n";
          }
          i=j=0;
        do
          {
                temp+=array_a[i][j];
 
                     if((j==5)||(i==0))
                {
                            cout<<"\nÄèГ*ГЈГ®Г*Г*ëü - "<<n<<" = "<<temp;
                            if(temp>max)
                                    max=temp;
                        temp=0;
                                n++;
                     }
                if((i==0)&&(j<5))
                     {
                        
                                i=++j;
                                j=0;
                     }
                     else if(j==5){j=++i;i=5;}
                     else{i--;j++;}
          }while((i<6)&&(j<6));
          cout<<"\n"<<max;
}
прошу помочь...

Добавлено через 14 часов 16 минут
пожалуйста
Best-pm07
..:::BesT:::..
 Аватар для Best-pm07
7 / 7 / 1
Регистрация: 19.03.2009
Сообщений: 195
15.06.2010, 22:29  [ТС]     Двумерный массив: целочисленная квадратная матрица #6
не понимаю в чем дело
как сделать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2010, 16:34     Двумерный массив: целочисленная квадратная матрица
Еще ссылки по теме:

C++ Целочисленная квадратная матрица.
C++ целочисленная квадратная матрица
целочисленная квадратная матрица C++

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

Или воспользуйтесь поиском по форуму:
Best-pm07
..:::BesT:::..
 Аватар для Best-pm07
7 / 7 / 1
Регистрация: 19.03.2009
Сообщений: 195
20.06.2010, 16:34  [ТС]     Двумерный массив: целочисленная квадратная матрица #7
пожалуйста
Yandex
Объявления
20.06.2010, 16:34     Двумерный массив: целочисленная квадратная матрица
Ответ Создать тему
Опции темы

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