IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Матрицы, C++
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 7
Пол: Мужской
Реальное имя: Никита

Репутация: -  0  +


Дана вещественная матрица размером NxM. Упорядочить ее строки по возрастанию сумм их элементов.

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

#include <cstdio>
#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
const int n=5; //Количество строк.
const int m=3; //Количество столбцов.
int array[n][m]; //Основной массив.

cout<<"Zapolnite massiv 5x3: \n";
for (int i=0;i<n;i++)
for (int j=0;j<m;j++)
cin>>array[i][j]; //Заполнение массива.

//Подсчет суммы в каждой строке.
int summa;
int sum[n];
for (int i=0;i<n;i++)
{
summa=0;
for (int j=0;j<m;j++)
summa=summa+array[i][j];
sum[i]=summa;
cout<<"Summa "<<i+1<<"-i stroki: "<<sum[i]<<"\n";
}

system("PAUSE");
return 0;
}
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






После заполнения массива sum - делаем так:

    for(int i = 0; i < n; i++) {
for(int j = n - 1; j > i; j--) {
if(sum[j - 1] > sum[j]) {
int T = sum[j]; sum[j] = sum[j - 1]; sum[j - 1] = T;
for(int k = 0; k < m; k++) {
T = array[j - 1][k]; array[j - 1][k] = array[j][k]; array[j][k] = T;
}
}
}
}
for(int i = 0; i < n; i++) {
for(int j = 0; j < m; ++j)
cout << setw(4) << array[i][j]; // подключить <iomanip> чтоб не было ошибки
cout << endl;
}


В принципе, можно еще добавить функцию swap(), которая будет обменивать 2 числа, тогда код будет более читаемым...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 7
Пол: Мужской
Реальное имя: Никита

Репутация: -  0  +


Спасиб! Разобрался smile.gif Чучуть сам не дошел...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 24.11.2020 14:26
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name