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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Nikita9413
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 49
#1

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

21.04.2013, 17:32. Просмотров 340. Ответов 3
Метки нет (Все метки)

выяснить является ли матрица симметричной относительно главной диагонали.
помогите плииз, не получается разобраться.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2013, 17:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос использование функций шаблонов (C++):

Множественное наследование, Перегрузка функций, Перегрузка операторов, Использование дружественных функций и классов, Использование шаблонов классов - C++
Здравствуйте!!! Я бы хотел попросить помоч решить...ну или скинуть примеры таких задач, если вдруг у вас они завалялись на компе или...

Использование функций шаблонов - C++
Помогите с задачей: Подсчитать среднее арифметическое ненулевых элементов, расположенных под побочной диагональю. Вот моя наработка,...

Использование функций шаблонов - C++
Использование функций шаблонов: для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода массива, а также...

использование функций-шаблонов - C++
для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода и вывода массива, а также для решения основной...

Использование шаблонов функций - C++
После си только начал изучение с++, так вот программа просто выводит минимум из двух чисел, компилятор выдает ошибку call of overloaded...

Использование функций-шаблонов - C++
Для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода и вывода массива, и также шаблон для решения...

3
yoghurt92
374 / 345 / 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;
}
1
Nikita9413
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 49
21.04.2013, 21:23  [ТС] #3
еще раз извиняюсь за наглость, а можно с пояснением. буду благодарен)
0
yoghurt92
374 / 345 / 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;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2013, 21:46
Привет! Вот еще темы с ответами:

Использование функций-шаблонов - C++
На уроке преподаватель не объясняет как решать. Задачи берутся из &quot;Основы программирования на языке С++&quot; часть 2 Огнева М.В., Кудрина Е.В....

Использование функций шаблонов - C++
Ребят помогите. надо для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода и вывода массива а также...

Задача по С++ на Использование функций шаблонов! - C++
Подсчитать норму матрицы по формуле пожалуйста,помогите!!! очень срочно

Использование функций и шаблонов функций - C++
Составьте программу – формирование цены на молоко. Животновод в начале каждой зимы цену на молоко на р%, а каждым летом снижает на столько...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
21.04.2013, 21:46
Ответ Создать тему
Опции темы

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