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

Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диаг

06.05.2012, 13:52. Просмотров 2591. Ответов 2
Метки нет (Все метки)

Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диагоналях и поменять его местами с элементом, стоящим на пересечении этих диагоналей
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2012, 13:52
Ответы с готовыми решениями:

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

Дана квадратная матрица, все элементы которой различны
1. Дана квадратная матрица, все элементы которой различны. Поменять местами...

Дана действительная квадратная матрица D(6,6). Заменить нулями все элементы, расположенные на главной диагонал
С++ Дана действительная квадратная матрица D(6,6). Заменить нулями все...

Найти наибольший элемент матрицы среди стоящих на главной и побочной диагоналях
Дана действительная квадратная матрица n (n-нечетное),все элементы которой...

Найти наибольший элемент среди стоящих на главной и побочной диагоналях матрицы
Дана действительная квадратная матрица порядка N (N – нечетное), все элементы...

2
Mиxaил
534 / 439 / 162
Регистрация: 10.12.2009
Сообщений: 1,857
06.05.2012, 14:25 2
Лучший ответ Сообщение было отмечено dot4er как решение

Решение

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
#include <iostream>
#include <iomanip>
 
const int N = 5;
 
void get_random( int **a )
{
    for( int i = 0; i < N; i++ )
        for( int j = 0; j < N; j++ )
            a[ i ][ j ] = i * ( N + 1 ) + j + 1;
}
 
void print_matrix( int **a )
{
    for( int i = 0; i < N; i++ )
    {
        for( int j = 0; j < N; j++ )
            std::cout << std::setw( 4 ) << a[ i ][ j ] << " ";
        std::cout << std::endl;
    }
    std::cout << std::endl;
}
 
void exchange( int **a )
{
    int max = INT_MIN, imax, jmax;
    for( int i = 0; i < N; i++ )
    {
        if ( a[ i ][ i ] > max )
        {
            max = a[ i ][ i ];
            imax = i;
            jmax = i;
        }
        if ( a[ i ][ N - i - 1 ] > max )
        {
            max = a[ i ][ N - i - 1 ];
            imax = i;
            jmax = N - i - 1;
        }
    }
    std::swap( a[ N / 2 ][ N / 2 ], a[ imax ][ jmax ] );
}
 
int main()
{
    int **matr = new int *[ N ];
    for( int index = 0; index < N; index++ )
        matr[ index ] = new int[ N];
 
    get_random( matr );
    print_matrix( matr );
 
    exchange( matr );
    print_matrix( matr );
 
    return 0;
}
1
valeriikozlov
Эксперт С++
4686 / 2512 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
06.05.2012, 14:32 3
уже успел поменять код...
как вариант:
если действительная матрица a[][] размером n уже есть, то можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int i1=0, i2=0, i;
double tmp;
for(i=1; i<n; i++)
{
    if(a[i][i]>a[i1][i1])
        i1=i;
    if(a[i][n-1-i]>a[i2][n-1-i2])
        i2=i;
}
if(a[i1][i1]>a[i2][n-1-i2])
{
    tmp=a[n/2][n/2]; a[n/2][n/2]=a[i1][i1]; a[i1][i1]=tmp;
}
else
{
    tmp=a[n/2][n/2]; a[n/2][n/2]=a[i2][n-1-i2]; a[i2][n-1-i2]=tmp;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2012, 14:32

Дана действительная квадратная матрица порядка 8. В строках с отрицательным элементом на главной диагонали найти сумму всех элементов
Дана действительная квадратная матрица порядка 8. В строках с отрицательным...

Дана действительная квадратная матрица порядка 12. Заменить нулями все её элементы, расположенные на глав-ной диагонали и выше неё.
Дана действительная квадратная матрица порядка 12. Заменить нулями все её...

Дана действительная квадратная матрица B порядка n.В каждой строке матрицы найти минимальный элемент и поместить его в вектор D.
Прошу помочь решить задачки!:(очень нужно (Билет №6) Дана действительная...


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

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

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