Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Ayrmax
0 / 0 / 1
Регистрация: 06.08.2015
Сообщений: 85
1

Отсортировать строки матрицы в порядке возрастания их сумм

06.08.2015, 13:05. Просмотров 1323. Ответов 1
Метки нет (Все метки)

Тема: Функции2.
10. Пусть дано матрицу nxm, заполненную псевдослучайными числами в заданном диапазоне. Сортировать строки матрицы в порядке возрастания их сумм.
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.08.2015, 13:05
Ответы с готовыми решениями:

Отсортировать строки матрицы в порядке возрастания суммы их элементов
Имеется задача, перескажу своими словами: матрица двухмерная, ввод с клавиатуры или случ....

Проверить расположены ли столбцы матрицы в порядке возрастания их сумм
Есть задачка по инфе: Дана квадратная матрица 5*5. Проверить, расположены ли столбцы в порядке...

Как отсортировать строки файла в порядке возрастания их длины
Помогите решить задачу!!!!!! Дан файл со строками, отсортировать строки в порядке возрастания их...

Отсортировать элементы, лежащие на главной диагонали матрицы, в порядке возрастания
Дана матрица А(10х10). Отсортировать элементы,лежащие на главной диагонали, в порядке возрастания....

Отсортировать столбцы матрицы в порядке возрастания значения элементов столбца
Доброго времени суток всем, очень нужна ваша помощь... написать процедуру сортировки массива В...

1
ture
532 / 340 / 206
Регистрация: 27.11.2014
Сообщений: 1,043
06.08.2015, 15:52 2
Лучший ответ Сообщение было отмечено Ayrmax как решение

Решение

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
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
#include <ctime>
 
void sort(int**,int,int,int);
int  sum(int**, int, int);
 
int main() {
    setlocale(LC_ALL, "rus");
    //строим матрицу
    cout << "Укажите размер матрицы MxN - ";
    int m, n;
    cin >> m >> n;  
    int ** M = new int*[m];
    //srand(time(0));
    cout << "До:\n";
    for(int i = 0; i < m; i++) {
        M[i] = new int[n];
        int sum = 0;
        for(int j = 0; j < n; j++) {
            sum+= M[i][j] = rand();
            cout << M[i][j] << "\t";
        }
        cout << endl;       
    }
 
    //сортируем массив
    sort(M, n, 0, m - 1);
 
    //досвидос
    cout << "Опосля:\n";
    for(int i = 0; i < m; i++) {
        for(int j = 0; j < n; j++)
            cout << M[i][j] << "\t";
        cout << endl;
        delete[] M[i];
    }
    delete[] M; 
    system("pause");
    return 0;
}
 
void sort(int ** M, int n, int a, int b) {
    int avg = sum(M,(a + b) / 2, n);
    int i = a, j = b;
    do {
        while(i < b && sum(M, i, n) < avg) i++;
        while(j >= i && sum(M, j, n) > avg) j--;
        if(i <= j) {
            for(int k = 0; k < n; k++) {
                int t = M[i][k];
                M[i][k] = M[j][k];
                M[j][k] = t;
            }
            i++;
            j--;
        }
    } while(i < j);
 
    if(i == j)
        i++;
 
    if(a<j)
        sort(M, n, a, j);
    if(i<b)
        sort(M, n, i, b);
}
 
int  sum(int ** M, int i, int n) {
    int s = 0;
    for(int j = 0; j < n; j++)
        s += M[i][j];
    
    return s;
}
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.08.2015, 15:52

Отсортировать столбцы матрицы в порядке убывания сумм простых чисел столбцов
Отсортировать столбцы матрицы в порядке убывания сумм простых чисел столбцов,буду очень признателен

Отсортировать строки матрицы по возрастанию сумм положительных элементов
Отсортировать строки матрицы по возрастанию сумм положительных элементов. очень нужно)

Отсортировать строки матрицы по возрастанию сумм положительных элементов
Отсортировать строки матрицы по возрастанию сумм положительных элементов.


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

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

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