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

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

Восстановить пароль Регистрация
 
Eternal123
0 / 0 / 0
Регистрация: 07.11.2012
Сообщений: 50
22.05.2013, 09:09     Рассматривая матрицу как вектор строк, упорядочить ее по количеству нечетных элементов в каждой строке #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
#include <iostream.h>
#include <cmath>
#include <conio.h>
#include<time.h>
 
 
 
int main()
{ const int m=4;
  float A[m][m];
  float B[m][m];
  int C[m];
  int i,j,k,i1,i2,j1,j2,n1,n2;
  srand (time (NULL));
  cout<<"vivodim clych. matricy A"<<endl;
   for (i=1;i<=m;i++)
        {
        for (j=1;j<=m;j++)
        {
          A[i][j]= rand()%10;
          cout<<A[i][j]<<' ';
         }
         cout<<endl;
      }
  cout<<endl;
    cout<<"kol-vo nechetnih el-tov"<<endl;
   for (i=1;i<=m;i++)
       {C[i]=0;
        for (j=1;j<=m;j++)
        {
                if(fmod(A[i][j],2)!=0) C[i]++;
        }
        cout<<C[i]<<endl;
        }
        cout<<"yporyadochennaya matrica"<<endl;
        for (i1=1;i1<=m;i1++)
                {
                for (i=1;i<=m;i++)
                {
                if (C[i]==i1)
                for (j=1;j<=m;j++) cout<<A[i][j];
                cout<<endl;
                }
                }
        getch ();
        return 0;
}
нужно оформить как функцию, помогите плз
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2013, 09:09     Рассматривая матрицу как вектор строк, упорядочить ее по количеству нечетных элементов в каждой строке
Посмотрите здесь:

C++ Рассматривая каждую строку прямоугольной матрицы как вектор, найти номера векторов-строк, для которых модуль их скалярного произведения S имеет максим
C++ Построить вектор, каждый элемент которого равен количеству равных элементов в соответствующей строке матрицы
В каждой строке матрицы найти количество нечетных элементов C++
Вычислить количество отрицательных нечетных элементов в каждой строке C++
C++ Найти сумму элементов четных строк и произведение элементов нечетных строк массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igor001
8 / 3 / 1
Регистрация: 12.02.2013
Сообщений: 68
22.05.2013, 09:28     Рассматривая матрицу как вектор строк, упорядочить ее по количеству нечетных элементов в каждой строке #2
на сколько я понял ф-ция получает в качестве аргумента двумерный массив целочисленных значений. верно?
Eternal123
0 / 0 / 0
Регистрация: 07.11.2012
Сообщений: 50
22.05.2013, 09:34  [ТС]     Рассматривая матрицу как вектор строк, упорядочить ее по количеству нечетных элементов в каждой строке #3
Цитата Сообщение от igor001 Посмотреть сообщение
на сколько я понял ф-ция получает в качестве аргумента двумерный массив целочисленных значений. верно?
видимо да)
igor001
8 / 3 / 1
Регистрация: 12.02.2013
Сообщений: 68
22.05.2013, 10:06     Рассматривая матрицу как вектор строк, упорядочить ее по количеству нечетных элементов в каждой строке #4
вот прототип, я его так писал с сайта, сча попробую навоять че-нить подобное в ИДЕ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void sort(int in[x][y])
{
     int counter_1 = 0;
     int counter_2 = 0;
     for(int i = 0; i < x; ++i)
     {
           counter_2 = counter_1;
           counter_1 = 0;
           for(int j = 0; j < y; ++j)
           {
                 if(in[i][j]%2 == 0) ++counter_1;
           }
           
           if(counter_1 > counter_2)
           {
                    //swap
           }
     }
}
Добавлено через 23 минуты
появилась идея как это нормально сделать а не так как я написал, хотя похоже, но исчезло время. в общем я предлагаю написать ф-цию которая подсчитывает кол-во четных/нечетных эл-тов каждого одномерного массива матрицы и создает массив пар ключ + значение где ключ - кол-во чет/нечет, а значение - указатель на одномерный массив матрицы, затем реализовать сортировку по ключу и поменять местами указатели.
прим. если не в курсе двумерный массив - это указатель на массив указателей на одномерные массивы

Добавлено через 1 минуту
для хранения пары можно юзать структуру

Добавлено через 11 секунд
или контейнер из STL
Yandex
Объявления
22.05.2013, 10:06     Рассматривая матрицу как вектор строк, упорядочить ее по количеству нечетных элементов в каждой строке
Ответ Создать тему
Опции темы

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