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

Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.83
pooi
0 / 0 / 0
Регистрация: 02.01.2011
Сообщений: 15
16.05.2011, 22:39     Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент #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
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#include <iostream>
#include <time.h>
#include <conio.h>
 
using namespace std;
 
int main()
{
        int a[6][5];
        int temp[6];
        int i, j;
 
        srand(time(NULL));
 
        cout << "Ishodniy massiv" << endl;
 
       for(i=0; i<5; i++)
        {
                for(j=0; j<5; j++)
                {
                        a[i][j] = rand()%100-50;
                        cout << a[i][j] << "\t";
                }
                cout << endl << endl;
        }
 
 
         for(j=0; j<5; j++)
        {
                a[5][j] = 0;
 
                for(i=0; i<5; i++)
                {
                        if ((a[i][j]<0) && (a[i][j]%2!=0))
                                a[5][j] += abs(a[i][j]);
                }
        }
 
 
        int min=0;
        for(i=0; i<4; i++)
        {
                min = i;
 
                for(j=i+1; j<5; j++)
                {
                        if (a[5][j]<a[5][min])
                        {
                                min = j;
                        }
 
                }
 
                temp[0] = a[0][min];
                temp[1] = a[1][min];
                temp[2] = a[2][min];
                temp[3] = a[3][min];
                temp[4] = a[4][min];
                temp[5] = a[5][min];
 
                a[0][min] = a[0][i];
                a[1][min] = a[1][i];
                a[2][min] = a[2][i];
                a[3][min] = a[3][i];
                a[4][min] = a[4][i];
                a[5][min] = a[5][i];
 
                a[0][i] = temp[0];
                a[1][i] = temp[1];
                a[2][i] = temp[2];
                a[3][i] = temp[3];
                a[4][i] = temp[4];
                a[5][i] = temp[5];
        }
 
        cout << endl << "Otsortirovanniy massiv" << endl;
        for(i=0; i<5; i++)
        {
                for(j=0; j<5; j++)
                {
                        cout << a[i][j] << "\t";
                }
                cout << endl << endl;
        }
 
        for(i=0; i<5; i++)
                cout << "---\t";
        cout << endl;
 
        for(i=0; i<5; i++)
                cout << a[5][i] << "\t";
        cout << " - harakteristiki stolbcov" << endl << endl;
 
 
        int n, sum;
 
        for(j=0; j<5; j++) 
        {
                for(i=0; i<5; i++) 
                {
                        if (a[i][j]<0) 
                        {
                                sum = 0;
 
                                for(n=0; n<5; n++) 
                                {
                                        sum += a[n][j];
                                }
 
                                cout << "summa elementov stolbca [" << j+1 << "] = " << sum << endl;
                                break;
                        }
                }
        }
 
 
 
 
 
        getch();
        return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2011, 22:39     Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент
Посмотрите здесь:

C++ Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент
C++ Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент
C++ Найти сумму элементов в тех строках которые, содержат хотя бы один отрицательный элемент
Матрицы: найти сумму элементов в тех столбцах, которые содержат хотя бы один отрицательный элемент C++
Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-comrade-
355 / 356 / 42
Регистрация: 11.06.2010
Сообщений: 703
16.05.2011, 23:50     Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент #2
Цитата Сообщение от pooi Посмотреть сообщение
вводить количество строк и столбцов
C++
1
2
3
4
5
6
7
8
9
10
   int i,j,n,m;
   cout<<"  N=";
   cin>>n;
   cout<<"  M=";
   cin>>m;
   int** a=new int* [n]; 
   for(i=0;i<n;i++) a[i]=new int [m]; 
    …
   for(i=0;i<n;i++) delete [] a[i]; 
   delete [] a;
F. Alonso
1 / 1 / 0
Регистрация: 06.04.2011
Сообщений: 117
09.05.2012, 15:51     Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент #3
а с блок-схемой не поможете?
F. Alonso
1 / 1 / 0
Регистрация: 06.04.2011
Сообщений: 117
14.05.2012, 18:23     Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент #4
pooi, а ты не мог бы расставить коменты для проги?
Yandex
Объявления
14.05.2012, 18:23     Найти сумму элементов в тех столбцах,которые содержат хотя бы один отрицательный элемент
Ответ Создать тему
Опции темы

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