Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 28.04.2017
Сообщений: 4
1

Найти максимальный элемент каждой строки двумерного массива и соответственно заменить их элементами в главной

11.05.2017, 15:30. Показов 2858. Ответов 5
Метки нет (Все метки)

Очень срочно надо помогите плиз
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.05.2017, 15:30
Ответы с готовыми решениями:

Найти максимальный элемент каждой строки двумерного массива
Как найти макс элемент каждой строки двумерного массива const a = 100; b = 100; type ...

Найти в каждой строке матрицы максимальный элемент и поменять его местами с элементами главной диагонали
Дана матрица с(12,12). Найти в каждой строке максимальный элемент и поменять его местами с...

Найти в каждой строке матрицы максимальный элемент и поменять его местами с элементами главной диагонали
Обработать матрицу, элементами которой являются случайные значения функции f(x)= 10/(1+x2); x ....

Найти в каждой строке матрицы максимальный элемент и поменять его местами с элементами главной диагонали
Обработать матрицу, элементами которой являются случайные значения функции f(x)= 10/(1+x2); x ....

5
1748 / 1340 / 1407
Регистрация: 28.10.2016
Сообщений: 4,266
11.05.2017, 15:50 2
Максимальные заменить на элементы главной или элементы главной заменить на максимальные? Что-то не совсем понятно
0
0 / 0 / 0
Регистрация: 28.04.2017
Сообщений: 4
11.05.2017, 15:56  [ТС] 3
элементы главной заменить на максимальные каждой строки
0
Форумчанин
Эксперт CЭксперт С++
8171 / 5021 / 1436
Регистрация: 29.11.2010
Сообщений: 13,453
11.05.2017, 16:06 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
#include <algorithm>
#include <array>
#include <iostream>
 
int main()
{
    constexpr size_t N = 4;
    std::array<std::array<int, N>, N> arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6};
 
    for (const auto &l : arr)
    {
        for (const auto &x : l)
            std::cout << x << " ";
        std::cout << std::endl;
    }
    std::cout << std::endl;
 
    for (size_t i = 0; i < N; i++)
    {
        std::swap(arr[i][i], *std::max_element(arr[i].begin(), arr[i].end()));
        for (const auto &x : arr[i])
            std::cout << x << " ";
        std::cout << std::endl;
    }
}
0
1748 / 1340 / 1407
Регистрация: 28.10.2016
Сообщений: 4,266
11.05.2017, 16:09 5
Лучший ответ Сообщение было отмечено Куаныш Нуржанов как решение

Решение

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
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int n;
 
void Output(int** a) {
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++)
            cout << a[i][j] << "\t";
        cout << endl;
    }
}
 
int main()
{
    cout << "n = "; cin >> n;
    int** a = new int*[n];
    for (int i = 0; i < n; i++)
        a[i] = new int[n];
 
    for (int i = 0; i < n; i++)
        for (int j = 0; j < n; j++)
            a[i][j] = rand() % 101 - 50;
    cout << "Matrix:\n"; Output(a);
    for (int i = 0; i < n; i++) {
        int max = a[i][0];
        for (int j = 1; j < n; j++)
            if (a[i][j] > max)
                max = a[i][j];
        a[i][i] = max;
    }
    cout << "Result:\n"; Output(a);
 
    for (int i = 0; i < n; i++)
        delete[] a[i];
    delete a;
    system("pause");
    return 0;
}
Добавлено через 2 минуты
MrGluck,
Цитата Сообщение от Куаныш Нуржанов Посмотреть сообщение
элементы главной заменить на максимальные
а вы меняете местами
3
Форумчанин
Эксперт CЭксперт С++
8171 / 5021 / 1436
Регистрация: 29.11.2010
Сообщений: 13,453
11.05.2017, 16:11 6
Тогда строку
C++
1
std::swap(arr[i][i], *std::max_element(arr[i].begin(), arr[i].end()));
заменить на
C++
1
arr[i][i] = *std::max_element(arr[i].begin(), arr[i].end());
0
11.05.2017, 16:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.05.2017, 16:11

Как найти максимальный элемент двумерного массива в каждой строке?
Задание: В массиве все нечётные элементы, стоящие сверху от минимального элемента массива, заменить...

В каждой строке матрицы найти максимальный элемент и заменить им первый элемент строки
В матрице Х(4,5) в каждой строке найти максимальный элемент и заменить им первый элемент строки....

Заменить максимальный элемент каждой строки массива на противоположный по знаку
Дан двумерный массив размером 5 * 6, заполненный случайным образом. Заменить максимальный элемент...

Найти максимальный элемент в каждой строке двумерного массива по модулю, и сложить их
Задаётся массив двумерный. Нужно сначала найти максимальный элемент в каждой строке по модулю, а...


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

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

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