С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
LongerHand
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 7
1

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

01.04.2017, 01:48. Просмотров 159. Ответов 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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <math.h>
#include <stdio.h>
#include <iomanip>
using namespace std;
int v,l,m;
int main()
{
setlocale (LC_ALL,"Russian");
const int k = 5;
int Matr[k][k]={};
srand(time(NULL));
for(int i=0;i<k;i++)
   {
printf("\n");
cout<<"|";
for(int j=0;j<k;j++)
   {
    Matr[i][j]=(rand()%51)-10;
    cout<<setw(4)<<Matr[i][j]<<" ";
   }
    cout<<"|"<<" ";
   }
   printf("\nВведите номер ряда\nv=");
   scanf("%i",&v);
   int max=Matr[0][0];
   int xmax=0;
   for( int i=0;i<k;i++)
   {
       if(Matr[i][i]>max)
       {
           max=Matr[i][i];
           xmax=i;
       }
   }
cout<<"Maxsimum="<<max<<endl;
 
 
   return 0;
 
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.04.2017, 01:48
Ответы с готовыми решениями:

Переставить строку матрицы с максимальным элементом на главной диагонали, со строкой с заданным номером m
Задана квадратная матрица. Переставить строку с максимальным элементом на...

Поменять местами строку матрицы с максимальным элементом на главной диагонали со строкой m
#include&lt;conio.h&gt; #include&lt;iostream.h&gt; #include&lt;iomanip.h&gt;...

Поменять местами строку с максимальным элементом на главной диагонали со строкой с заданным номером m
Дана квадратная матрица. Поменять местами строку с максимальным элементом на...

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

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

3
likehood
981 / 826 / 395
Регистрация: 25.12.2016
Сообщений: 2,727
Завершенные тесты: 3
01.04.2017, 09:27 2
Поменять местами строки i1 и i2:
C++
1
2
for (j=0; j<n; j++)
    std::swap(a[i1][j], a[i2][j]);
0
LongerHand
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 7
01.04.2017, 16:44  [ТС] 3
likehood,
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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <stdio.h>
#include <iomanip>
using namespace std;
int v;
int main()
{
setlocale (LC_ALL,"Russian");
const int k = 5;
int Matr[k][k]={};
srand(time(NULL));
for(int i=0;i<k;i++)
   {
printf("\n");
cout<<"[";
for(int j=0;j<k;j++)
   {
    Matr[i][j]=(rand()%51)-10;
    cout<<setw(4)<<Matr[i][j]<<" ";
   }
    cout<<"]\n"<<" ";
   }
   int max=Matr[0][0];
   int xmax=0;
   for( int i=0;i<k;i++)
   {
       if(Matr[i][i]>max)
       {
           max=Matr[i][i];
           xmax=i;
       }
   }
cout<<"\nMaximum="<<max<<endl;
printf("\nВведите номер строки\nv=");
scanf("%i",&v);
if(1 <= v && v <= 5)
{
for(int j = 0; j < k ; j++)
{
    int tmp = Matr [xmax][j];
    Matr[xmax][j] = Matr[v][j];
    Matr[v][j] = tmp;
}
 
}
else
{
  cout<<"Error!";
  return(false);
}
       for(int i = 0 ; i < k ; i++)
       {
 
       {
           printf("\n");
                  cout<<"[";
            }
 
             {
                for(int j = 0; j < k ; j++)
                   cout<<setw(4)<<Matr[i][j]<<" ";
                       cout<<"]\n"<<" ";
                  }
                   }
 
 
                 return 0;
 
}
Все получилось.Что еще можно добавить\убрать в коде?
0
likehood
981 / 826 / 395
Регистрация: 25.12.2016
Сообщений: 2,727
Завершенные тесты: 3
01.04.2017, 17:05 4
Цитата Сообщение от LongerHand Посмотреть сообщение
Что еще можно добавить
Форматирование кода.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.04.2017, 17:05

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

Найти строку матрицы с максимальным нечетным элементом поменять эту строку местами с нулевой строкой.
помогите решить ззадачу дана квадратная матрица получаемых через rand() найти...

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


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

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

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