Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Ilona1993
1 / 1 / 1
Регистрация: 15.05.2013
Сообщений: 26
#1

Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик

29.05.2013, 17:32. Просмотров 659. Ответов 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
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
#include <iostream>
#include <iomanip>
#include<stdlib.h>
#include <time.h>
using namespace std;
int main()
{int K=0,m,n;
int x[100][100];
setlocale(LC_ALL,"Russian");
srand(time(NULL));
cout<<"Введите количество строк: ";
cin>>m;
cout<<"Введите количество столбцов: ";
cin>>n;
for (int i = 0; i < m; ++i) {
 
for (int j = 0; j < n; ++j) {
 
x[i][j]=rand()%10;
if (j==n) cout<<"\n";
}
}
cout<<"Введенная матрица X:\n";
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
cout<<x[i][j]<<"";
if (j==m-1) cout<<"\n";
}
}
K=0;
for (int j=0; j<n; ++j)
{
int f=1;
for (int i=0; i<m; ++i)
if (x[i][j] == 0)
{ 
f=0; 
i=m; 
}
if (f==1) 
{
++K;
}
}
cout<<"\n Количество столбцов не содержащих '0' : "<<K<<endl;
int result[5][6];
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
result[i][j] = x[i][j];
}
}
for (int j = 0; j < n; ++j) {
result[j][5] = 0;
}
for (int i = 0; i < m; ++i) {
for (int j = 0; j < n; ++j) {
result[i][5] += x[i][j];
}
}
int character_arr[5][2];
for (int i = 0; i < m; ++i){
character_arr[i][0] = i;
character_arr[i][1] = result[i][5];
}
int mas[2];
for (int k = 0; k < m; ++k){
for (int i = 0; i < m-1; ++i){
if (character_arr[i][1]>character_arr[i+1][1]) {
mas[0] = character_arr[i+1][0];
mas[1] = character_arr[i+1][1];
character_arr[i+1][1] = character_arr[i][1];
character_arr[i+1][0] = character_arr[i][0];
character_arr[i][1] = mas[1];
character_arr[i][0] = mas[0];
}
}
}
cout<<"Сортировка по возрастанию характеристик: \n";
for (int j = 0; j < n; ++j) {
for (int i = 0; i < m; ++i) {
cout<<result[character_arr[j][0]][i]<<"";
if (i==m-1) cout<<"\n"<<"";
}
}
return 0;
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2013, 17:32
Ответы с готовыми решениями:

Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик
Задание: Вариант 2 Дана целочисленная прямоугольная матрица. Переставляя...

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

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

Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик
Подскажите, пожалуйста, что делаю не так? //Характеристикой строки...

Массив: Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик.
Дана целочисленная прямоугольная матрица. Определить количество столбцов, не...

3
Nullik
43 / 12 / 4
Регистрация: 13.03.2013
Сообщений: 302
Завершенные тесты: 2
29.05.2013, 17:57 #2
Ilona1993, буду кэпом - если всё суммирует, значит не хватает условия.

Попробуйте к своей программе написать комментарии, что и как работает. Если вы работаете в вижуале, то там есть такая штука, как "точки останова", и построчно просматриваете код.

C++
1
int x[100][100];
А почему бы не воспользоваться созданием динамического массива? Вдруг тут размер будет 101 и 102?))))

C++
1
2
3
4
5
int **massiv=new int*[n]; 
for(int i=0; i<=n;i++) 
{ 
     int  mas[i]=new int[m]; 
}
Правда, тут нужно отследить n и m, но смысл создания двумерного динамического массива такой.))

Далее пошли какие-то переменные, переменные, объяснение которых было непонятно... Ну хоть бы понять для чего они, уже было бы неплохо
0
Ilona1993
1 / 1 / 1
Регистрация: 15.05.2013
Сообщений: 26
29.05.2013, 18:31  [ТС] #3
я писала условие но ничего не получается
0
Ilona1993
1 / 1 / 1
Регистрация: 15.05.2013
Сообщений: 26
04.06.2013, 18:59  [ТС] #4
помогитееееееее
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2013, 18:59

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

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

Переставляя столбцы заданной матрицы, расположить их в соответствии с ростом характеристик
Задание такое: Переставляя столбцы заданной матрицы, расположить их в...


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

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

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