Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/45: Рейтинг темы: голосов - 45, средняя оценка - 4.76
Temirlan90
134 / 134 / 25
Регистрация: 30.09.2010
Сообщений: 333
1

Определить максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы

01.10.2010, 11:59. Просмотров 8861. Ответов 6
Метки нет (Все метки)

Дана целочисленная квадратная матрица. Определить:
1) произведения элементов в тех строках, которые не содержат отрицательных элементов.
2) максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2010, 11:59
Ответы с готовыми решениями:

Определить максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы
Народ!!! Скиньте кто-нибудь код, завтра сдавать уже!!!

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

Определить максимум среди сумм эллементов диагоналей параллельных главной диагонали матрицы
Дана целочисленная квадратная матрица Определить максимум среди сумм эллементов...

Найти максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы
Задана целочисленная квадратная матрица A(N x N). Найти максимум среди сумм...

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

6
grrrrr
45 / 45 / 13
Регистрация: 21.04.2009
Сообщений: 265
01.10.2010, 13:51 2
1)
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
 const int m=3;
    
    int mass[m][m] = {1, 3, 6,
                      -3, 4, 2,
                      2, 7, 4}; 
    
    int k[m] = {0};
       
    int n=1;
    
    
 
    for(int i=0; i<m; i++)
    {
       for(int j=0; j<m; j++)
       {
               if(mass[i][j] < 0) 
               {
                             j=m;
                             n=1;
               }
               n *= mass[i][j];               
       }
       k[i] = n; 
    }
    for(int i=0; i<m; i++) cout << k[i] << " ";
    cout << "\n";
0
Temirlan90
134 / 134 / 25
Регистрация: 30.09.2010
Сообщений: 333
01.10.2010, 21:36  [ТС] 3
не работает

Добавлено через 2 часа 1 минуту
Спасибо что отписывался, но я всё нашел на форуме. И сделал под свой код =)
0
Alex_2k7
1 / 1 / 0
Регистрация: 26.09.2010
Сообщений: 3
05.10.2010, 09:36 4
Скинь пожалуйста програмный код....очень надо. Заранее спасибо!!!
0
Temirlan90
134 / 134 / 25
Регистрация: 30.09.2010
Сообщений: 333
05.10.2010, 14:47  [ТС] 5
Лучший ответ Сообщение было отмечено как решение

Решение

1)
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main()
{
   const int n = 3;
   int i,j,sum=0,v=0,maxsum=0;    
        int a[n][n],proizv[n];
        printf ("Kak vvodit' elementi?\n0 - random\n1 - s klaviaturi\n");
        scanf ("%i", &v);
        srand(time(0));
        switch (v)
        {
        case 0:
                for (i=0; i<n; i++)
                        for (j=0; j<n; j++) 
                                a[i][j] = rand()%20 - 2;
                break;
        case 1:
                for (i=0; i<n; i++)
                        for (j=0; j<n; j++)
                        {
                                printf ("a[%i][%i]= ", i+1, j+1);
                                scanf ("%i", &a[i][j]);
                        }
        }
   for (i=0; i<n; i++)
        {
                for (j=0; j<n; j++)
                {
                        printf ("%i ", a[i][j]);
                }
                printf ("\n");
        }
  system("PAUSE");
  
  for (i=0;i<n;i++)
  {
      proizv[i]=1;
   for(j=0;j<n;j++)
   {
          if(a[i][j]>0) proizv[i]*=a[i][j]; else proizv[i]=0;                         
   }    
      if(proizv[i]>0) printf("Proizvedenie elementov stroki %d ravno %d\n",i+1,proizv[i]);     
  }
  
  system("PAUSE");      
  }
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream>
 
using namespace std;
 
int main()
{    
   const int n = 3;
   int i,j,sum=0,v=0,maxsum=0;   
        int a[n][n],s[2*n];
        printf ("Kak vvodit' elementi?\n0 - random\n1 - s klaviaturi\n");
        scanf ("%i", &v);
        srand(time(0));
        switch (v)
        {
        case 0:
                for (i=0; i<n; i++)
                        for (j=0; j<n; j++) 
                                a[i][j] = rand()%20;
                break;
        case 1:
                for (i=0; i<n; i++)
                        for (j=0; j<n; j++)
                        {
                                printf ("a[%i][%i]= ", i+1, j+1);
                                scanf ("%i", &a[i][j]);
                        }
        }
   for (i=0; i<n; i++)
        {
                for (j=0; j<n; j++)
                {
                        printf ("%i ", a[i][j]);
                }
                printf ("\n");
        }
  system("PAUSE");
 /////////////////////////////////////////////////////// 
 for (j=0;j<(2*n);j++) s[j]=0;
  for (i=0;i<n;i++)
  {
      for (j=0;j+i<n;j++)
      {
          s[j]+=a[i][i+j];
          s[n+j]+=a[i+j][i]; 
      }      
  }
  for (j=0;j<n;j++) printf("%d\n",s[j]);
  for (j=n+1;j<(2*n);j++) printf("%d\n",s[j]);
  system("PAUSE");      
  }
4
crazygor1
6 / 6 / 4
Регистрация: 06.02.2010
Сообщений: 131
29.01.2012, 15:36 6
Она не находит максимум среди сумм

Добавлено через 1 час 52 минуты
Воть рабочий:
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream>
//#include "stdafx.h"
using namespace std;
 
int main()
{    
   const int n = 3;
   int i,j,sum=0,v=0,maxsum=0;   
        int a[n][n],s[2*n];
        printf ("Kak vvodit' elementi?\n0 - random\n1 - s klaviaturi\n");
        scanf ("%i", &v);
        srand(time(0));
        switch (v)
        {
        case 0://random
                for (i=0; i<n; i++)
                        for (j=0; j<n; j++) 
                                a[i][j] = rand()%20;
                break;
        case 1:// sklavi
                for (i=0; i<n; i++)
                        for (j=0; j<n; j++)
                        {
                                printf ("a[%i][%i]= ", i+1, j+1);
                                scanf ("%i", &a[i][j]);
                        }
        }
   for (i=0; i<n; i++)
        {
                for (j=0; j<n; j++)
                {
                        printf ("%i ", a[i][j]);
                }
                printf ("\n");
        }
  system("PAUSE");
 /////////////////////////////////////////////////////// 
 for (j=0;j<(2*n);j++) s[j]=0;
  for (i=0;i<n;i++)
  {
      for (j=0;j+i<n;j++)
      {
          s[j]+=a[i][i+j];
          s[n+j]+=a[i+j][i]; 
      }      
  }
  for (j=0;j<n;j++) printf("%d\n",s[j]);
  for (j=n+1;j<(2*n);j++) printf("%d\n",s[j]);
  maxsum=-1000;
  for (j=1;j<n;j++)
      if (maxsum<s[j]) 
          maxsum=s[j];
  cout<<"Max sum"<<endl;
  printf("%d\n",maxsum);
        
  system("PAUSE");  
  return 0;
  }
1
ALINA4
4 / 4 / 0
Регистрация: 10.12.2012
Сообщений: 131
10.04.2013, 09:36 7
а как реализовать там среднее арифметическое элементов тех строк которые не содержат отрицательных элементов
уплотнить заданную матрицу удаляя из нее строки и столбцы заполненные нулями
0
10.04.2013, 09:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2013, 09:36

Считать из файла матрицу. Определить максимум среди сумм элементов диагоналей, параллельных главной диагонали
Считать из файла целочисленную матрицу. Определить: 1. характеристикой строки...

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

В матрице найти максимум среди сумм элементов диагоналей, параллельных главной диагонали
Здравствуйте! Помогите пожалуйста, вот задачка: 1) Найти максимальную сумму...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru