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

использование функций шаблонов - C++

Восстановить пароль Регистрация
 
Nikita9413
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 49
21.04.2013, 17:32     использование функций шаблонов #1
выяснить является ли матрица симметричной относительно главной диагонали.
помогите плииз, не получается разобраться.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2013, 17:32     использование функций шаблонов
Посмотрите здесь:

использование функций-шаблонов C++
Использование функций шаблонов C++
Использование функций шаблонов C++
Использование функций-шаблонов C++
C++ использование шаблонов функций в с++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
21.04.2013, 20:58     использование функций шаблонов #2
Nikita9413,

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
#include <iostream>
using namespace std;
 
const int str(4), stb(4);
 
template <class T>
bool symmetric(T (*_mas)[str], const int _str, const int _stb){
    bool flag(true);
    for(int i = 0; i < _str - 1; ++i){
        for(int j = i + 1; j < _stb; ++j){
            if(_mas[i][j] != _mas[j][i]){
                flag = false;
                break;
            }
        }
 
        if(!flag)
            break;
    }
 
    return flag;
}
 
int main()
{
    int mas[str][stb] = {{1, 2, 3,4},
                         {2, 6, 7, 8},
                         {3, 7, 11, 12},
                         {4, 8, 12, 16}};
 
    if(symmetric(mas, str, stb)){
        cout << "Symmetric!";
    }
    else{
        cout << "Not symmetrical!\n";
    }
 
    cout << "\n\n";
    return 0;
}
Nikita9413
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 49
21.04.2013, 21:23  [ТС]     использование функций шаблонов #3
еще раз извиняюсь за наглость, а можно с пояснением. буду благодарен)
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
21.04.2013, 21:46     использование функций шаблонов #4
Nikita9413,

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>
using namespace std;
 
const int str(4), stb(4);           //кол-во строк и столбцов
 
template <class T>
bool symmetric(T (*_mas)[str], const int _str, const int _stb){
    //функция возвращает true если матрица симметричная и ложь
    //в противном случае
 
    bool flag(true);
    for(int i = 0; i < _str - 1; ++i){
        for(int j = i + 1; j < _stb; ++j){
            if(_mas[i][j] != _mas[j][i]){       //сравниваем соответсвующие элементв
                flag = false;                   //выши и ниже главной диагонали
                break;                          //если они не равны, прекращаем сравнения
            }                                   //возвращаем ложь
        }
 
        if(!flag)
            break;
    }
 
    return flag;
}
 
int main()
{
    int mas[str][stb] = {{1, 2, 3,4},
                         {2, 6, 7, 8},
                         {3, 7, 11, 12},
                         {4, 8, 12, 16}};
 
    if(symmetric(mas, str, stb)){           //смотрим что вернула функция
        cout << "Symmetric!";               //если true выводим сообщение что матрица
    }                                       //симметричная
    else{
        cout << "Not symmetrical!\n";       //иначе
    }
 
    cout << "\n\n";
    return 0;
}
Yandex
Объявления
21.04.2013, 21:46     использование функций шаблонов
Ответ Создать тему
Опции темы

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