Форум программистов, компьютерный форум CyberForum.ru

Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн - C++

Восстановить пароль Регистрация
 
AlexeySlavin
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 17
19.01.2013, 13:30     Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн #1
Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальный максимум – это максимальный элемент строки.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2013, 13:30     Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн
Посмотрите здесь:

Определить, является ли данная квадратная матрица симметричной относительно главной диагонали. C++
Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали. C++
Определить, является ли заданная целая квадратная матрица n- го порядка симметричной (относительно главной диагонали.) C++
C++ Определить является ли заданная квадратная матрица симметричной относительно главной диагонали
Определить, является ли заданная квадратная матрица симметричной относительно побочной диагонали C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
19.01.2013, 16:11     Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн #2
Если матрица a[][] размером N*N уже есть, то можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//заменa на число 0 каждого локального максимума
int j_max;
for(int i=0; i<N; i++)
{
    j_max=0;
    for(int j=1; j<N; j++)
        if(a[i][j_max]<a[i][j])
            j_max=j;
    a[i][j_max]=0;
}
//проверка симметричности (относительно главной диагонали)
bool fl=true;
for(int i=1; i<N; i++)
    for(int j=0; j<i; j++)
        if(a[i][j]!=a[j][i])
            fl=false;
if(fl)
    cout<<"Yes"<<endl;
else
    cout<<"No"<<endl;
AlexeySlavin
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 17
22.01.2013, 18:43  [ТС]     Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн #3
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Если матрица a[][] размером N*N уже есть, то можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//заменa на число 0 каждого локального максимума
int j_max;
for(int i=0; i<N; i++)
{
    j_max=0;
    for(int j=1; j<N; j++)
        if(a[i][j_max]<a[i][j])
            j_max=j;
    a[i][j_max]=0;
}
//проверка симметричности (относительно главной диагонали)
bool fl=true;
for(int i=1; i<N; i++)
    for(int j=0; j<i; j++)
        if(a[i][j]!=a[j][i])
            fl=false;
if(fl)
    cout<<"Yes"<<endl;
else
    cout<<"No"<<endl;
можете объяснить с 11 строки?
GggDrej
 Аватар для GggDrej
71 / 71 / 8
Регистрация: 21.01.2013
Сообщений: 147
22.01.2013, 20:04     Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн #4
Цитата Сообщение от AlexeySlavin Посмотреть сообщение
можете объяснить с 11 строки?
Квадратная матрица симметричная относительно главной даигонали если для любых i,j a[i][j] = a[j][i];
Сначала переменной f присваиваем значение true. Потом с помощью двух циклов идем по матрице и проверяем для
всех елементов равенство a[i][j] = a[j][i]. Если a[i][j] != a[j][i] - то переменной f присваиваем значение false. В конце проверяем, если переменная
f = true - значит выполняется равенство a[i][j] = a[j][i] для всех i,j, а значит матрица симметричная, иначе не симетричная
Yandex
Объявления
22.01.2013, 20:04     Определить, становится ли симметричной (относительно главной диагонали) заданная матрица после замены на число 0 каждого локального максимума. Локальн
Ответ Создать тему
Опции темы

Текущее время: 02:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru