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

Поменять местами последнюю строку со строкой, в которой находится максимальный элемент матрицы

24.06.2013, 17:32. Просмотров 1256. Ответов 2
Метки нет (Все метки)

В матрице из действительных минусовых чисел поменять местами последний рядок с рядком, в котором имеется максимальный елемент матрицы.(я так понял массив уже существует(даже рандомный мб), просто вывести на экране ДО и ПОСЛЕ)
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.06.2013, 17:32
Ответы с готовыми решениями:

Поменять местами первую строку матрицы с той строкой, где находится максимальный элемент
Задана матрица А(4,4). Если максимальный элемент матрицы равен сумме элементов первой строки, то...

Поменять местами последнюю строку со строкой, содержащей минимальный элемент матрицы
Дан вещественный массив а1, а2,…, аn. Если в этом массиве есть хотя бы один элемент, принадлежащий...

Поменять местами последнюю строку со строкой, содержащей минимальный элемент матрицы
В заданной матрице поменять местами последнюю строку со строкой, содержащей минимальный элемент...

Поменять местами последнюю строку со строкой, содержащей наибольший отрицательный элемент матрицы
В заданной матрице поменять местами последнюю строку со строкой, содержащей наибольший...

Строку матрицы содержащую максимальный элемент, поменять с первой строкой местами
Дана матрица N на M . Найти максимальный элемент и строка, содержащий этот элемент, поменять с...

2
ViktorKozlov
135 / 127 / 59
Регистрация: 13.12.2012
Сообщений: 293
24.06.2013, 17:54 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
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <iomanip>
using std::cout; using std::endl; using std::setw;
 
const int M=5, N=6;
const int range1=-50, range2=-5;
 
int main()
{
    int arr[M][N];
 
    srand(time(0));
 
    for (int i=0;i<M;i++)
    {
        for (int j=0;j<N;j++)
        {
            arr[i][j]=rand()%(range2-range1)+range1;
            cout<<setw(5)<<arr[i][j];
        }
        cout<<endl;
    }
 
    int max=arr[0][0];
    int nummax=0;
    for (int j=0;j<N;j++)
        for (int i=0;i<M;i++)
            if (arr[i][j]>max)
            {
                max=arr[i][j];
                nummax=j;
            }
 
    if (nummax!=N-1)
        for (int i=0;i<M;i++)
        {
            int buf=arr[i][nummax];
            arr[i][nummax]=arr[i][N-1];
            arr[i][N-1]=buf;
        }
 
    cout<<endl;
 
    for (int i=0;i<M;i++)
    {
        for (int j=0;j<N;j++)
        {
            cout<<setw(5)<<arr[i][j];
        }
        cout<<endl;
    }
}
1
FireProoF
17 / 17 / 3
Регистрация: 28.10.2012
Сообщений: 201
24.06.2013, 18:03 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
// 12.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include "time.h"
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n = 3,i,j;
    double** Array = new double*[n];
    for(i=0;i<n;i++)    Array[i]=new double[n];
    srand(time(NULL));
    for(i=0;i<n;i++)    for(j=0;j<n;j++)    Array[i][j]=-rand()%-12;
    cout<<endl;
    for(i=0;i<n;i++)
    {
        cout<<endl;
        for(j=0;j<n;j++)    cout<<Array[i][j]<<" ";
    }
    //////////////////////////
 
    for(int k=0;k<n;k++)
    {
        double MAX=Array[0][k];
        int iMAX = k;
        for(i=0;i<n;i++)
        {
            if(MAX < Array[i][k])   
            {
                MAX = Array[i][k];
                iMAX = i;
            }
        }
 
        if(iMAX != n-1)
        {
            double* temp = new double[n];
 
            for(i=0;i<n;i++)    temp[i]=Array[iMAX][i];
            for(i=0;i<n;i++)    Array[iMAX][i]=Array[n-1][i];
            for(i=0;i<n;i++)    Array[n-1][i]=temp[i];
 
            delete temp;
        }
        cout<<endl;
        for(i=0;i<n;i++)
        {
            cout<<endl;
            for(j=0;j<n;j++)    cout<<Array[i][j]<<" ";
        }
    }
 
    
 
    /////////////////
    cout<<endl;
    system("pause");
 
    return 0;
}
2
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2013, 18:03

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

Найти максимальный элемент главной диагонали матрицы, поменять местами строку/столбец, где он находится
С клавиатуры вводится матрица чисел P Найти максимальнный элемент главной диагонали Поменять...

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


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

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

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