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

Работа с квадратной матрицей - C++

Восстановить пароль Регистрация
 
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
18.11.2011, 20:27     Работа с квадратной матрицей #1
Дана целочисленная квадратная матрица NxN определить:
1)Cумму элементов в тех столбцах,которые не содержат отрицательных элементов.( у меня получилось сделать).
а вот со второй проблемка

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

пример
1 -2 3 4
2 -2 3 0
1 -9 2 1
3 5 -3 4

первая диагональ это -2 и 2 потом 3,-2,1 пропускаем побочную потом 0,2,5 и последняя диагональ это 1 и -3

а Вот в общем и моя программа только с выполненным первым условием
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
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
#include<iomanip.h>
int* *p;
int main()
{int i,j,n,sum;
cout<<"N=";
cin>>n;
p=new int* [n];
for (i=0;i<n;i++)
p[i]=new int[n];
cout<<"vvedite elementi:\n";
for (i=0;i<n;i++)
for (j=0;j<n;j++)
cin>>p[i][j];
cout<<"vivod elementov massiva:\n";
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
cout<<setw(4)<<p[i][j];
cout<<endl;}
sum=0;
for (j=0;j<n;j++)
{for (i=0;i<n;i++) if (p[i][j]<0) {sum=0; break;} else if (p[i][j]>0) sum+=p[i][j];
cout<<"summa "<<j+1<<"go stolbca = "<<sum;sum=0;cout<<endl;}
getch();
return(0);
}


P.S. Буду весьма благодарен за помощь....

Добавлено через 1 час 28 минут
Очень срочно нужна мне эта программа выручите...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2011, 20:27     Работа с квадратной матрицей
Посмотрите здесь:

C++ Работа с матрицей
работа с матрицей C++
C++ Снова я со своей квадратной матрицей.
C++ Работа с матрицей
C++ Программа с использованием функции. По заданной квадратной матрицей розмиолм 10х10 построить вектор длиной 19
Выполнить над квадратной матрицей А порядка n последовательность действий, указанную в задании C++
C++ работа с квадратной матрицей
Составить описание класса для работы с квадратной целочисленной матрицей C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-comrade-
355 / 356 / 42
Регистрация: 11.06.2010
Сообщений: 703
18.11.2011, 21:39     Работа с квадратной матрицей #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 <iostream>
#include <math.h>
 
using namespace std;
 
int AboveDiagonal(int **a,int n,int k)
{
    int sum=0;
    for(int i=0;i<n;i++) 
    {
       if(k<n) sum+=abs(a[i][n-k-1]);
       k++;           
    }
    return sum;
}
///////////////////////////////////////////////////////////
int BelowDiagonal(int **a,int n,int k)
{
    int sum=0;
    for(int i=n-1;i>0;i--) 
    {
       if(k<n) sum+=abs(a[i][k]);
       k++;           
    } 
    return sum;
}
///////////////////////////////////////////////////////////
int main()
{
    int n,m;
    cout<<"N="; cin>>n;
    int **a=new int *[n];
    for(int i=0;i<n;i++) a[i]=new int [n];
    cout<<"Matrix:"<<endl;
    for(int i=0;i<n;i++)    
    for(int j=0;j<n;j++) cin>>a[i][j];
    int min=AboveDiagonal(a,n,1);   
    for(int i=1;i<n-1;i++) 
    { 
        int t=AboveDiagonal(a,n,i); 
        if(min>t) min=t;
    } 
    for(int i=1;i<n-1;i++) 
    { 
        int t=BelowDiagonal(a,n,i); 
        if(min>t) min=t;
    } 
    cout<<endl<<"min="<<min<<endl;  
    for(int i=0;i<n;i++) delete a[i];
    delete [] a;
    system("pause");
    return 0;
}
Noclip
43 / 27 / 2
Регистрация: 27.09.2011
Сообщений: 280
19.11.2011, 15:46  [ТС]     Работа с квадратной матрицей #3
-comrade-, спасибо за идею..
я подумаю немного и сделаю попроще...
Просто я сделаю это одной программой пропустил побочную диагональ , если получиться конечно... =)

Если будут еще какие мысли пиши.

Добавлено через 7 часов 16 минут
-comrade-, ты наверное не понял постановку задачи....

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

ну все-равно спасибо...
Yandex
Объявления
19.11.2011, 15:46     Работа с квадратной матрицей
Ответ Создать тему
Опции темы

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