0 / 0 / 0
Регистрация: 20.10.2016
Сообщений: 12
1

Поменять местами столбец, с минимальным элементом, со столбцом, с максимальным элементом

01.11.2016, 08:12. Показов 3767. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задана матрица размером N*M. Поменять местами столбец, содержащий элемент с минимальным значением, со столбцом, содержащим элемент с максимальным значением.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.11.2016, 08:12
Ответы с готовыми решениями:

Поменять местами строку матрицы с максимальным и минимальным элементом
Проблема такова: программа меняет местами строку с максимальным и минимальным элементом. Когда я...

Поменять местами строку с максимальным и минимальным элементом матрицы
Задана матрица размером NxN. Поменять местами строку с максимальным элементом матрицы и строку с...

Для матрицы 6*6 найти столбцы с минимальным и максимальным элементом и поменять их местами
Надо написать на С++ Для матрицы 6*6 найти столбцы с минимальным и максимальным элементом и...

Переставить столбец с минимальным элементом со столбцом с заданным номером m
Условие : Задана квадратная матрица. Переставить столбец с минимальным элементом со столбцом с...

1
1494 / 1209 / 821
Регистрация: 29.02.2016
Сообщений: 3,601
01.11.2016, 15:29 2
Лучший ответ Сообщение было отмечено Exallot как решение

Решение

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
#include <iostream>
#include <time.h>
#include <stdlib.h>
 
using namespace std;
 
void print(int n, int **a)
{
    cout << " Matr " << endl;
    for(int i = 0; i < n; ++i)
    {
        for(int j = 0; j < n; ++j)
           cout << a[i][j] << "\t";
    cout << endl;
    }
}
 
void init(int n, int **a)
{
    for(int i = 0; i < n; ++i)
       for(int j = 0; j < n; ++j)
          a[i][j] = rand() % 100;
}
 
void maxmin(int n, int **a )
{
    int min = a[0][0]; 
    int max = a[0][0];
    int mincol = -1;
    int maxcol = -1;
    for (int i = 0; i < n; i++)
        for (int j = 0; j < n; j++)
        {
            if (a[i][j] < min)
                min = a[i][j];
            if (a[i][j] > max) 
                max = a[i][j];
        }
    for (int i = 0; i < n; i++)
        for (int j = 0; j < n; j++)
        {
            if (a[i][j] == min)
                mincol = j;
            if (a[i][j] == max)
                maxcol = j;
 
        }
cout << min << " " << max << endl;
cout << mincol << " " << maxcol << endl;
if(mincol!=maxcol)
    for (int i = 0; i < n; i++)
    {
        int temp = a[i][mincol];
        a[i][mincol] = a[i][maxcol];
        a[i][maxcol] = temp;
    }
}
 
int main()
{
    srand(time(NULL));
    int n = 7;
    int **A;
    int *rows, *index;
    A = new int *[n];
    rows = new int[n];
    index = new int[n];
    for(int i = 0; i < n; ++i)
       A[i]= new int [n];
    init(n, A);     
    print(n, A);
    maxmin(n, A );
    print(n, A);
    system("pause");
    return 0;
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.11.2016, 15:29
Помогаю со студенческими работами здесь

В заданной матрице заменить строки с максимальным элементом на строку с минимальным элементом
Помогите девочке очень срочно нужна помощь Замена в матрице строки с максимальны элементом на...

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

Строку матрицы с минимальным элементом поменять со строкой с максимальным
не получается поменять местами строку в которой находится минимальный элемент на строку в которой...

Найти разность между максимальным элементом главной диагонали и минимальным элементом вспомогательной диагонали
Помогите пожалуйста написать программу. Дан динамический двумерный массив А(н,н). Написать...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru