Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Унарная операция setprecision https://www.cyberforum.ru/ cpp-beginners/ thread1517054.html
Здравствуйте. Манипулятор потока fixed, насколько я понял, нужен для того, чтобы вывести значение с фиксированной точкой. Но почему значение выводится вообще выводится в формате научной нотации?(не...
C++ Инициализация объекта нулями или мусором
Здравствуйте. Я бы воспользовался поиском, но даже не знаю, как ему сформулировать вопрос. Допустим, есть какой-то класс с конструктором: class SomeClass { public: //SomeClass(); ...
Функция не "видит" другую функцию C++
В программе 2 функции(обе в глобальной зоне видимости) обращаются одна к другой, при этом та функция которая находится в коде ниже видит ту, которая выше. Наоборот не выходит. Как сделать так чтобы...
C++ Ifstream и попытка "непоследовательного" доступа Здравствуйте, у меня есть небольшая задачка, которую надо решить. У меня есть файл с необходимыми мне числовыми последовательностями. И я его хочу считать последовательно и посимвольно до... https://www.cyberforum.ru/ cpp-beginners/ thread1517042.html
C++ Операторы для объектов конструктора https://www.cyberforum.ru/ cpp-beginners/ thread1516967.html
Я хочу сделать следующие действия, но не знаю как перегрузить оператор для этого: Time t(5),tt(3),y(0); Time Ti; y=t+tt; Моя попытка:
Прочитать из бинарного файла байт номер 0 и отобразить его на дисплее в виде числа C++
прочитать из бинарного файла байт номер 0 и отобразить его на дисплее в моем коде программа читает символ и на экране печатает аски изображение, вместо числа как исправить? #include...
Зависимость размера класса от типа данных C++
Всем привет, вот такой вопрос возник: Почему 2 класса с одинаковыми типами данных имеют разный размер: Пример: class A { char b; double a; int c; }
C++ Heap in C++ Как подключить кучу в C++? https://www.cyberforum.ru/ cpp-beginners/ thread1516913.html
C++ Undefined type https://www.cyberforum.ru/ cpp-beginners/ thread1516898.html
Возникает ошибка, что не определен класс SurfaceCalculationThread. Как исправить? #include <osg/NodeCallback> #include "SurfaceCalculationThread.h" class UpdateSurfaceCallback : public...
C++ Для чего управляющий символ \? ? Для чего в языке С++ используется управляющий символ \? ? Добавлено через 8 минут Вот, что нашел по этому вопросу, но компилятор MVS 2015 при выводе "??/" выводит "??/", а не "\". ... https://www.cyberforum.ru/ cpp-beginners/ thread1516892.html
0 / 0 / 0
Регистрация: 19.08.2015
Сообщений: 3
0

Построить матрицу по заданному алгоритму

19.08.2015, 17:15. Просмотров 492. Ответов 3
Метки (Все метки)

Товарищи, нужна помощь. Задача следующая: построить матрицу D. Что она из себя представляет? Эта матрица используется при подсчёте определителя суммы матриц мудрёным способом. Она строится следующим образом. Если нам нужно построить матрицу D(m), где m - некое число(пусть в моем примере оно будет равно 2) нам нужно рассмотреть вначале матрицу размерность https://www.cyberforum.ru/cgi-bin/latex.cgi?{m}^{m}хhttps://www.cyberforum.ru/cgi-bin/latex.cgi?{m}^{m}, в нашем случае 4х4:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{pmatrix} (1,1)(1,1)&  (1,1)(1,2)&  (1,1)(2,1)& (1,1)(2,2)\\  (1,2)(1,1)&  (1,2)(1,2)&  (1,2)(2,1)& (1,2)(2,2)\\  (2,1)(1,1)&  (2,1)(1,2)&  (2,1)(2,1)& (2,1)(2,2)\\  (2,2)(1,1)&  (2,2)(1,2)&  (2,2)(2,1)& (2,2)(2,2)\end{pmatrix}
Как строится эта матрица: как видим ячейке IJ соответствуют 2 числовых набора I=(i1,i2) и J=(j1,j2) полученные путём составления всевозможных перестановок с повторением. И исходя из этой матрицы, по правилу : в случае, когда в наборах I и J все числа различны, то соответствующий элемент матрицы D вычисляется, используя формулу
https://www.cyberforum.ru/cgi-bin/latex.cgi?{D}^{(m)}(I,J)=\frac{1}{m!}{(-1)}^{Y} где Y=Y(I,J) определяет чётность перестановок
, в противном случае соответствующий элемент положим равным нулю(т.е. когда в наборах есть повторяющиеся числа).
на выходе получим матрицу
D=https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{pmatrix} 0&  0&  0& 0\\  0&  1&  -1& 0\\  0&  -1&  1& 0\\  0&  0&  0& 0\end{pmatrix}
Так вот построение такой матрицы для любого m мне нужно запрограммировать используя C++. Просидев долгое время на cyber-форуме я нашёл пару способов нахождения всевозможных перестановок, но без повторения, т.е. числовой набор (1,2) имеет только 1 перестановку (2,1). А в моём случае 4. Это первая проблема. Вторая, это подсчёт чётности перестановок, а именно количества инверсий. Я нашёл тоже несколько способов, но не нашёл способа, который бы подошёл под мой случай: 2 набора и подсчитать количество инверсий относительно друг друга.
Если кто-то встречал подобную задачу или просто знает, как её решить, буду очень благодарен.

Вернуться к обсуждению:
Построить матрицу по заданному алгоритму
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.08.2015, 17:15
Готовые ответы и решения:

Построить квадратную целочисленную матрицу указанного порядка по заданному правилу
Построить целочисленную матрицу A(10;10), заполнив её следующим образом: a(1,1)=1 ...

Построить матрицу по заданному образцу
Построить матрицу(6х6) , которая соответствует виду \begin{matrix}n &amp; 0 &amp; \cdots &amp; 0 &amp; n\\\\ 0...

Построить матрицу по заданному правилу
Помогите пожалуйста написать код,срочно очень нужно. Дана матрица целых чисел(размеры и элементы...

Построить квадратную матрицу по заданному образцу
Помогите плиз решить задачу! Условие: построить квадратную матрицу A(n,n), n=10. чтобы выглядела...

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