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

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

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

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

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

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

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

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

2
136 / 128 / 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
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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.06.2013, 18:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

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

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

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


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

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

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