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

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

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

Поменять местами столбцы с максимальным и минимальным элементами в матрице - C++

19.12.2013, 21:34. Просмотров 604. Ответов 3
Метки нет (Все метки)

дана квадратная матрица натуральных чисел(получаемая через rand()). Поменять местами столбцы с максимальным и минимальным элементами в матрице. вывести на печать начальный и конечный вариант матриц
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2013, 21:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поменять местами столбцы с максимальным и минимальным элементами в матрице (C++):

Поменять местами строки с максимальным и минимальным элементами - C++
вот код который определяет мин и макс елементи матрици а мне ище нужно поменять строки етих елементов местами.помогите !!! #include...

Матрица: поменять местами строки с минимальным и максимальным элементами - C++
в данной действительной матрице размером n x m поменять местами строку, содержащую элемент с наибольшим значением, со строкой, содержащей...

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

В матрице найти строки с максимальным и минимальным элементами - C++
В общем, есть задача: найти в массиве строку с максимальным и минимальным элементом всей матрицы. Затем поменять эти строки местами и...

Поменять местами элементы с максимальным и минимальным значениями - C++
Пожалуйста помогите решить задачи. 1. Дан массив на 100 элементов случайных цифр в диапазоне от -50 до 50. Во всех последовательностях...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
azoller
17 / 17 / 1
Регистрация: 03.05.2013
Сообщений: 114
19.12.2013, 21:38 #2
1. Заполняешь матрицу.
2. Задаешь пару переменных для хранения max и min значений.
3. Приравниваешь им значения A[0][0].
4. Пробегаешь по всей матрице, сравнивая очередное значение матрицы с min и max.
5. Если условие сравнения истинное, запоминаешь переменную-счетчик на данной операции.
6. Меняешь значения местами.
recoder
130 / 130 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
19.12.2013, 22:20 #3
Вот вроде, проверьте!
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
int main()
{
    using namespace std;
 
    int mas[5][5];
 
    srand(time(NULL));
    for(int i = 0; i < 5; i++)
        for(int j = 0; j < 5; j++)
            mas[i][j] = rand() % 10 + 1;
 
 
    int min, max;
    min = mas[0][0];
    max = mas[0][0];
 
    int nj, mj;
    nj = mj = 0;
 
    for(int i = 0; i < 5; i++)
        for(int j = 0; j < 5; j++){
            if (min >= mas[i][j]){
                min = mas[i][j];
                nj = j;
            }
            if (max <= mas[i][j]){
                max = mas[i][j];
                mj = j;
            }
        }
 
    
 
    // Вывод
    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 5; j++)
            cout << mas[i][j] << " ";
        cout << endl;
    }   
 
    // Меняем мастами
    for (int j = 0, i = 0; j < 5, i < 5; j++, i++){
        int temp = mas[j][mj];
        mas[j][mj] = mas[i][nj];
        mas[i][nj] = temp;
    }
 
    cout << endl << endl;
    // Вывод
    for(int i = 0; i < 5; i++){
        for(int j = 0; j < 5; j++)
            cout << mas[i][j] << " ";
        cout << endl;
    }   
 
    cin.get();
    return 0;
}
Genn55
367 / 214 / 41
Регистрация: 26.12.2012
Сообщений: 708
19.12.2013, 23:33 #4
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
int main()
{
    using namespace std;
    int n=5,m = 5;
    int mas[n][m];
 
    srand(time(NULL));
    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < m; j++)
            {
                mas[i][j] = rand() % 100;
                cout << mas[i][j] << "\t";
            }
            cout<<"\n";
    }
    int min = mas[0][0], max = mas[0][0];
    int ind_min = 0,ind_max = 0;
 
    for(int i = 0; i < n; i++)
        for(int j = 0; j < m; j++)
        {
            if (min >= mas[i][j])
            {
                min = mas[i][j];
                ind_min = j;
            }
            if (max <= mas[i][j]){
                max = mas[i][j];
                ind_max = j;
            }
        }
  cout << "  Min = "<< min<< "  Max = "<<max <<"\n";
    // Меняем мастами
    for (int i = 0; i < n;i++){
        int temp = mas[i][ind_max];
        mas[i][ind_max] = mas[i][ind_min];
        mas[i][ind_min] = temp;
    }
    cout << "\n\n";
    // Вывод
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++)
            cout << mas[i][j] << "\t";
        cout << endl;
    }
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2013, 23:33
Привет! Вот еще темы с ответами:

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

Найти в строке элементы с максимальным и минимальным значениями и поменять их местами - C++
Помогите пожалуйста составить схему алгоритма, который найдет в строке элементы с максимальным и минимальным значениями, если минимальный...

Для масива 7 на 7 найти строки з максимальным и минимальным елементом и поменять их местами - C++
Для масива 7 на 7 найти строки з максимальным и минимальным елементом и поменять их местами Вот начало, создал масив, а вот как найти...

Во всех последовательностях чисел поменять местами элементы с максимальным и минимальным значениями - C++
//Даны 2 одномерных массива. Во всех последовательностях отрицательных чисел поменять //местами элементы с максимальным и минимальным...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.12.2013, 23:33
Ответ Создать тему
Опции темы

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