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

Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.64
urinec
1 / 1 / 0
Регистрация: 14.08.2012
Сообщений: 14
14.08.2012, 04:55     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) #1
Помогите пожалуйста, срочно нужно
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2012, 04:55     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали)
Посмотрите здесь:

Определить, является ли данная квадратная матрица симметричной относительно главной диагонали. C++
Определить, является ли квадратная матрица симметричной относительно побочной диагонали. C++
Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали. C++
Определить, является ли заданная целая квадратная матрица n- го порядка симметричной (относительно главной диагонали.) C++
C++ Определить является ли заданная квадратная матрица симметричной относительно главной диагонали
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
14.08.2012, 06:33     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) #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
#include <iostream>
 
template<class T, size_t size>
bool is_simmetric(T matrix[size][size])
{
    for (int i = 0; i < size; i++)
        for (int j = 0; j < size; j++)
            if (i - j < 0)
                if (matrix[i][j] != matrix[j][i])
                    return false;
    return true;
}
 
int main()
{
    int matrix[3][3] = {
        { 1, 2, 3 },
        { 2, 5, 4 },
        { 3, 4, 0 }
    };
    int matrix2[3][3] = {
        { 1, 2, 3 },
        { 2, 5, 4 },
        { 4, 4, 0 }
    };
    std::cout << std::boolalpha << is_simmetric<int, 3>(matrix) << std::endl
              << std::boolalpha << is_simmetric<int, 3>(matrix2) << std::endl;
    return 0;
}
urinec
1 / 1 / 0
Регистрация: 14.08.2012
Сообщений: 14
14.08.2012, 07:10  [ТС]     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) #3
Уважаемый ПАТРИК! Не будет ли возможности решить еще и эту задачу:
Дана вещественная матрица порядка 6. заменить нулями все ее элементы, расположенные на главной диагонали и выше ее.
Заранее благодарен с уважением - уринец!
SubTerran
8 / 8 / 0
Регистрация: 13.08.2012
Сообщений: 18
14.08.2012, 07:35     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) #4
Библиотека Matrix.h
http://www.stroustrup.com/Programming/Matrix/Matrix.h

Библиотека MatrixIO.h
http://www.stroustrup.com/Programming/Matrix/MatrixIO.h


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<fstream>
#include<sstream>
#include<cmath>
#include<cstdlib>
#include<string>
#include<list>
#include<vector>
#include<algorithm>
#include<stdexcept>
#include "Matrix.h"
#include "MatrixIO.h"
 
using namespace std;
using namespace Numeric_lib;
 
//------------------------------------------------------------------------------
 
inline void keep_window_open()
{
    cin.clear();
    cout << "Please enter a character to exit\n";
    char ch;
    cin >> ch;
    return;
}
 
//------------------------------------------------------------------------------
 
int main()
    try
{
    setlocale( LC_ALL, "Russian" );
 
    Matrix<double, 2> mtrx(6, 6);
 
    srand(1);
 
    for (Index i = 0; i < 6; ++i)
        for (Index j = 0; j < 6; ++j)
            mtrx(i, j) = 1.0 * rand() / RAND_MAX;
 
    cout << mtrx << '\n';
 
    for (Index i = 0; i < 6; ++i)
        for (Index j = 0; j < 6; ++j)
            if (j >= i)
                mtrx(i, j) = 0.0;
 
    cout << mtrx << '\n';
 
    keep_window_open();
    return 0;
}
catch (exception& e) {
    cerr << "error: " << e.what() << '\n'; 
    keep_window_open();
    return 1;
}
catch (...) {
    cerr << "Oops: unknown exception!\n"; 
    keep_window_open();
    return 2;
}
 
//------------------------------------------------------------------------------
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
14.08.2012, 07:42     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) #5
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
#include <iostream>
#include <iomanip>
 
int main()
{
    const int size = 4;
    double matrix[size][size] = {
        { 1.0, 2.0, 3.4, 5.2 },
        { 2.3, 3.4, 2.4, 5.2 },
        { 3.2, 3.2, 5.4, 3.2 },
        { 2.3, 3.1, 3.4, 3.2 }
    };
    for (int i = 0; i < size; i++)
    {
        for (int j = 0; j < size; j++)
            std::cout << std::setw(5) << matrix[i][j];
        std::cout << std::endl;
    }
    for (int i = 0; i < size; i++)
        for (int j = i; j < size; j++)
            matrix[i][j] = 0.0;
    for (int i = 0; i < size; i++)
    {
        for (int j = 0; j < size; j++)
            std::cout << std::setw(5) << matrix[i][j];
        std::cout << std::endl;
    }
}
Yandex
Объявления
14.08.2012, 07:42     Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали)
Ответ Создать тему
Опции темы

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