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

Дана (построчно) вещественная матрица размером МхН. Переставляя ее строки и столбцы, добиться того, чтобы наибольший - C++

Восстановить пароль Регистрация
 
Phoenix_zsd
0 / 0 / 0
Регистрация: 15.04.2014
Сообщений: 18
15.04.2014, 20:39     Дана (построчно) вещественная матрица размером МхН. Переставляя ее строки и столбцы, добиться того, чтобы наибольший #1
Дана (построчно) вещественная матрица размером М на Н. Переставляя ее строки и столбцы, добиться того, чтобы наибольший элемент (один из них) оказался в верхнем левом углу.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2014, 20:39     Дана (построчно) вещественная матрица размером МхН. Переставляя ее строки и столбцы, добиться того, чтобы наибольший
Посмотрите здесь:

C++ Многомерные массивы . Дана вещественная матрица размером 10х10. Упорядочить её строки по не убыванию суммы их элементов.
Массив: Переставляя ее строки и столбцы достичь того, чтобы наибольший элемент матрицы оказался в верхнем левом углу C++
C++ . Дана матрица А[5,4]. Поменять местами столбцы, содержащие наибольший и наименьший элементы
Задана вещественная матрица размером m×n. Найти наибольший элемент. Перестановкой строк и столбцов, добиться того, чтобы данный элемент оказался в вер C++
C++ Добиться того, чтобы наибольший элемент данной матрицы оказался в верхнем левом углу
Переставляя строки и столбцы расположить наибольший элемент массива левом верхнем углу. C++
C++ Дана вещественная матрица A(n, n). Найти наибольший среди элементов, расположенных на и выше главной диагон
Переставляя строки и столбцы, добиться того, чтобы наибольший элемент матрицы оказался в правом нижнем углу C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fishec
 Аватар для fishec
118 / 118 / 30
Регистрация: 07.09.2013
Сообщений: 337
15.04.2014, 21:59     Дана (построчно) вещественная матрица размером МхН. Переставляя ее строки и столбцы, добиться того, чтобы наибольший #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
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
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
 
int main()
{
 
    int M, N;
    cout << "Enter M(lines): ";
    cin >> M;
    cout << "Enter N(columns): ";
    cin >> N;
    double **a = new double*[M];
    for (int i = 0; i < M; ++i){
        a[i] = new double[N];
    }
    cout << "Enter Matrix:\n";
    for (int i = 0; i < M; ++i){
        for (int j = 0; j < N; ++j){
            cin >> a[i][j];
        }
    }
    double max = a[0][0];
    int maxi = 0;
    int maxj = 0;
    for (int i = 0; i < M; ++i){
        for (int j = 0; j < N; ++j){
            if (a[i][j] > max){
                max = a[i][j];
                maxi = i;
                maxj = j;
            }
        }
    }
    if (maxi != 0){
        double *t = a[0];
        a[0] = a[maxi];
        a[maxi] = t;
    }
    if (maxj != 0){
        for (int i = 0; i < M; ++i){
            double temp = a[i][0];
            a[i][0] = a[i][maxj];
            a[i][maxj] = temp;
        }
    }
    cout << "New Matrix:\n";
    for (int i = 0; i < M; ++i){
        for (int j = 0; j < N; ++j){
            cout <<a[i][j]<< " ";
        }
        cout << endl;
    }
    for (int i = 0; i < M; ++i){
        delete[] a[i];
    }
    delete[] a;
    cout << endl;
    system("pause");
    return 0;
}
Yandex
Объявления
15.04.2014, 21:59     Дана (построчно) вещественная матрица размером МхН. Переставляя ее строки и столбцы, добиться того, чтобы наибольший
Ответ Создать тему
Опции темы

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