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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
valpri
0 / 0 / 0
Регистрация: 08.05.2014
Сообщений: 32
#1

Перестановка строк матриц по убыванию ее характеристик - C++

08.05.2014, 12:50. Просмотров 245. Ответов 3
Метки нет (Все метки)

Соответственно само задание:
Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.
Характеристикой строки целочисленной матрицы назовем сумму ее отрицательных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с убыванием характеристик.
Пробовал методом пузырька, но выдавала ошибку, что-то вроде - cannot convert int 4 to int in assignment Работаю в Code Blocks
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
#include <iostream>
#include <cstdlib>
#include <stdio.h>
using namespace std;
int main()
{
const int m=5, n =4;
int i,j;
int b[m][n],sum[m];
for (int i=0; i <m; i++)
{
 for(int j=0; j <n; j++)
 {
    b[i][j] =rand()%21-10;
 
    cout<<b[i][j]<<' ';
    }
cout << endl;}
 
int num=-1;
for (j=0; j<m; j++)
   for (i=0; i<n; i++)
  {
         if (b[i][j]==0)
         {
               cout<<"Nomer stolbca: "<<j+1<<endl; break;
         }
 }
   for (i=0; i<m; i++)
  {
       sum[i] = 0;
       for (int j = 0; j < m; j++)
        if((b[i][j] < 0)&&(j%2))
            sum[i]+= b[i][j];
}
     for (i = 0; i < m; i++)
        cout << sum[i] << endl;
 
 
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2014, 12:50     Перестановка строк матриц по убыванию ее характеристик
Посмотрите здесь:

Упорядочивание столбцов по убыванию характеристик - C++
Характеристика столбца – максимум среди сумм цифр элементов. Знаю c#, а тут пришлось писать на с++. Написал такой код. #include...

Упорядочить столбцы матрицы по убыванию их характеристик. - C++
Характеристикой столбца назовем наибольшее количество идущих подряд отрицательных элементов.Упорядочить столбцы матрицы по убыванию их...

Упорядочить столбцы матрицы по убыванию их характеристик - C++
Характеристикой столбца назовем наибольшее количество идущих подряд отрицательных элементов. Упорядочить столбцы матрицы по убыванию их...

Замена и перестановка элементов матриц - C++
Пожалуйста, помогите сделать задание :) Дана целочисленная матрица размера NxM. Переставить местами 4 и 5 строку.

Замена и перестановка элементов матриц - C++
1. Дана целочисленная матрица размера NxM. Поменять местами 1 и 2 столбцы. Помогите пожалуйста

Перестановка строк в матрице - C++
Дана целочисленная матрица размера 6х9. Найти матрицу, получающуюся из данной: перестановкой строк первой с последней, второй с...

Перестановка строк со столбцами - C++
Здравствуйте форумчане! у меня вот такая вот задачка: Написать процедуру обмена столбца и строки двухмерного массива. С ее помощью...

Перестановка строк матрицы - C++
Прошу прощения если такая тема есть, поиск не помог мне её найти. Дана матрица MxN: Переставить строки матрицы по возрастанию...

Перестановка строк матрицы - C++
Дана матрица размером М:N,найти матрицу полученную из данной перестановкой строк 1ой строки с последней.2 ой с предпоследней и т.д.(матрица...

Перестановка строк матрицы - C++
Ребята помогите, если не сложно! Накипело задачку решить, а в С++ баран) Вот задание: Переставить строки матрицы в соответствии с...

Перестановка строк в матрице - C++
Добрый день Дана заданная целочисленная матрица 6x9. Нужно чтобы по заданному пользователем распорядку чисел от 1 до 9 выстаивались в...

Перестановка строк в матрице (С++) - C++
Здравствуйте ребята,очень нужна помощь помогите пожалуйста написать программу.. смысл в том что в программе я должна ввести любую...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5240 / 4560 / 1532
Регистрация: 14.04.2014
Сообщений: 18,124
08.05.2014, 14:24     Перестановка строк матриц по убыванию ее характеристик #2
Ты m с n не перепутал? Если обращаешься [i][j], то смотри, чтобы везде i было до m, j до n или наоборот, но чтобы правильно. И чётность надо от (j+1) определять, если нумеруешь матрицу с 1.
jurok_85
241 / 224 / 77
Регистрация: 21.02.2013
Сообщений: 518
Завершенные тесты: 1
08.05.2014, 14:35     Перестановка строк матриц по убыванию ее характеристик #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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <stdio.h>
#include <iomanip>
using namespace std;
int main()
{
    srand(time(0));
    const int m=5, n =4;
    int i,j;
    int b[m][n];
    for (int i=0; i <m; i++)
    {
        for(int j=0; j <n; j++)
        {
            b[i][j] =rand()%21-10;
 
            cout<<setw(3) << b[i][j];
        }
        cout << endl;
    }
 
        bool flag = false;
    for (j=0; j<n; j++){
        for (i=0; i<m; i++)
            {
                if (b[i][j]==0)
                {
                    cout<<"Nomer stolbca: "<<j+1<<endl;
                    flag = true;
                    break;
                }
            }
            if(flag) break;
    }
    int sum , index;
    for(int N = 0; N != m - 1; N++)
    {
        int max = n* (-10);
        for(int i = N; i != m; i++)
        {
            sum = 0;
            for(int j = 0; j != n; j++)
            {
                if(b[i][j] < 0 && b[i][j]%2 == 0)
                sum += b[i][j];
            }
            if(sum > max)
            {
                max = sum;
                index = i;
            }
        }
 
        int temp[n];
        for(int j = 0; j < n; j++)
        {
            temp[j] = b[index][j];
            b[index][j] = b[N][j];
            b[N][j] = temp[j];
        }
 
    }
    cout << endl;
 
    for (int i=0; i <m; i++)
    {
        for(int j=0; j <n; j++)
        {
            cout<<setw(3) << b[i][j];
        }
        cout << endl;
    }
 return 0;
}
valpri
0 / 0 / 0
Регистрация: 08.05.2014
Сообщений: 32
08.05.2014, 15:00  [ТС]     Перестановка строк матриц по убыванию ее характеристик #4
Понял, спасибо всем)
Yandex
Объявления
08.05.2014, 15:00     Перестановка строк матриц по убыванию ее характеристик
Ответ Создать тему
Опции темы

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