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

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

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

Упорядочить строки матрицы по убыванию сумм элементов строк - C++

16.11.2014, 20:01. Просмотров 464. Ответов 1
Метки нет (Все метки)

Пожалуйста помогите сделать так, чтобы программа работала так, как требуется:
Дана матрица n*m. Упорядочить (переставить) строки матрицы по убыванию сумм элементов строк.
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
include <iostream>
using namespace std; 
int main()
{ int i,n,m,k, a[10][10] ,j,b[10],t,r,sum;
cout<<"";
cin>>n;
cin>>m;
cout<<""<<endl;
for(i=0;i<n;i++)
 for(j=0;j<m;j++)
cin>>a[i][j];
cout<<":"<<endl;
for(i=0;i<n;i++){
 for(j=0;j<m;j++)
cout<<a[i][j]<<" ";
cout<<endl;}
for(i=0;i<n;i++){sum=0;
for(j=0;j<m;j++)
sum+=a[i][j];b[i]=sum;}
for(i=0;i<n;i++)
 if (b[i]>b[i+1]) {
  t=b[i];
  b[i]=b[i+1];
  b[i+1]=t;}
  
cout<<"summa:"<<endl;
for(i=0;i<n;i++)
cout<<b[i]<<" ";
cout<<endl;
{
for(i=0;i<n-1;i++){
for(j=0;j<m;j++)
 if (b[i]>b[i+1]) {
  t=a[i][j];
  a[i][j]=a[i+1][j];
  a[i+1][j]=t;}
  if (b[i]>b[i+1]){
 r=b[i];
  b[i]=b[i+1];
  b[i+1]=r;}}}
cout<<":"<<endl;
for(i=0;i<n;i++){
 for(j=0;j<m;j++)
cout<<a[i][j]<<" ";
cout<<endl;}    
    return 0;}
Буду очень благодарен, за помощь.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2014, 20:01     Упорядочить строки матрицы по убыванию сумм элементов строк
Посмотрите здесь:

C++ Упорядочить строки матрицы по возрастанию последних элементов строк
C++ Упорядочить строки матрицы по не убыванию наибольших элементов
C++ Упорядочить строки матрицы по убыванию количества отрицательных элементов для каждой строки
Упорядочить строки матрицы по неубыванию сумм положительных элементов C++
C++ .Упорядочить строки матрицы по убыванию значений произведений наименьшего и наибольшего элементов каждой строки
Определить сумму элементов в каждом столбце матрицы, и упорядочить номера столбцов по убыванию сумм C++
C++ Отсортировать строки матрицы по убыванию сумм элементов каждой строк
Упорядочить строки матрицы по убыванию их наибольших элементов C++
C++ Расположить строки матрицы в порядке невозрастания сумм модулей нечетных элементов строк
C++ Упорядочить строки матрицы по возрастанию первых четных положительных элементов строк
C++ Упорядочить по росту сумм элементов строк строки той матрицы, у которой больше нулевых строк
Дана матрица. Упорядочить ее строки по убыванию первых элементов строк, если это возможно C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ReinDeer
19 / 19 / 3
Регистрация: 15.09.2014
Сообщений: 127
16.11.2014, 20:41     Упорядочить строки матрицы по убыванию сумм элементов строк #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
#include <stdio.h>      
int main(){
    const int n=4;
    int Array[n+1][n+1];
    for (int i=0;i<n;i++)
        Array[i][n]=0;
    for (int i=0;i<n;i++)
        for (int j=0;j<n;j++){
            scanf("%d",&Array[i][j]);
            Array[i][n]+=Array[i][j];
        }
    for (int k=n;k>0;k--)
        for (int i=0;i<k;i++)
            if(Array[i][n]>Array[i+1][n])
                for (int j=0;j<n+1;j++){
                    int Swap=Array[i][j];
                    Array[i][j]=Array[i+1][j];
                    Array[i+1][j]=Swap;
                }               
    for (int i=0;i<n;i++){
        for (int j=0;j<n;j++)
            printf(" %d",Array[i][j]);
        printf("\n");
    }
}
Yandex
Объявления
16.11.2014, 20:41     Упорядочить строки матрицы по убыванию сумм элементов строк
Ответ Создать тему
Опции темы

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