|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.05.2012, 23:17 | #1 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 121
|
Умножение матриц между собой так и на число.
Добрый день Уважаемые программисты, помогите пожалуйста разобраться. С# плохо знаю, но надо срочно сделать данное задание.
Задание: Описать класс, реализующий тип данных "вещественная матрица" и работу с ними. Класс должен реализовывать следующие операции над матрицами: 1. Умножение матриц между собой так и на число 2. Возведение в степень. 3.методы вычисления детерминанта и нормы; 4.доступ к элементу по индексам 5.комбинированные операции присваивания(*=) Написать программу, демонстрирующую все разработанные элементы класса. Удалось сделать только 1 и 2 задание. Помогите пожалуйста с остальными, очень надо. Заранее спасибо всем. вот все на что хватило моих знаний: Код:
Последний раз редактировалось PROkaZZZniK; 13.05.2012 в 22:24. |
13.05.2012, 15:29 | #2 |
Сама себе режиссер
Старожил
Регистрация: 27.04.2007
Сообщений: 3,365
|
Эмм... а не хватило знаний именно С# или матриц?
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
|
13.05.2012, 16:49 | #3 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 121
|
С матрицами, c# тоже начал изучать недавно пару месяцев назад. Вот попалось такое задание. НЕ понимаю как решить. Почитал Вики про детерминант (умножение матриц по диагоналям как я понял) и нормы(даже не понял что это). Построил примерно алгоритм решения(Перебрать матрицу, выбрать нужные элементы, умножить): 1.Детерминант-умножение матрицы по диагоналям. 2.определить элементы на диагонали. 3. перебрать двумерный массив и найти диагональные элементы. 4.Двумерный массив перебирается двумя циклами - один в другом. 5.Диагональные элементы имеют определенные индексы в массиве -1 строчка 1 стобец; 2строчка 2столбец; 3 строчка 3 столбец. Вот только не получается это реализовать в виде кода. С нормами вообще беда... В общем прошу помощи!
Выручите пожалуйста!!! Последний раз редактировалось PROkaZZZniK; 13.05.2012 в 18:27. |
13.05.2012, 20:52 | #4 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 121
|
Причитал 2 раза тему " Работа с матрицами и списками. Типичные задачи. Теория." не нашел того что мне надо.
|
13.05.2012, 21:48 | #5 |
Сама себе режиссер
Старожил
Регистрация: 27.04.2007
Сообщений: 3,365
|
Про норму почитайте тут. Мне кажется, тут более адекватно написано.
Детерминант - это не совсем умножение матриц по диагоналям. Так как у вас матрица любой размерности, то тут будет применена формула Почитайте про дополнительный минор (это матрица, образующаяся из вашей в результате "обрезания" из нее столбца и строки, в которой у вас стоит A1j). Делать это надо рекурсией до тех пор, пока у вас не получится в миноре матрица первого порядка, определителем которой является, собственно, сам элемент этой матрицы.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
|
13.05.2012, 22:17 | #6 | ||
Форумчанин
Регистрация: 21.10.2011
Сообщений: 121
|
Цитата:
Еще вопрос представленный мной ~ алгоритм решения детерминанта верный? Цитата:
Тема актуальна! Может кто нибудь поможет доделать задание. Последний раз редактировалось Stilet; 14.05.2012 в 12:05. |
||
14.05.2012, 13:01 | #7 | |
Сама себе режиссер
Старожил
Регистрация: 27.04.2007
Сообщений: 3,365
|
Цитата:
Код:
Тут даже думать не надо, просто подставить ее в код.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
|
|
14.05.2012, 15:33 | #8 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 121
|
|
14.05.2012, 19:14 | #9 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 121
|
ACE Valery, вопрос вот в чем. Разве исходя из этого нельзя описать алгоритм для любой матрицы?
Вот есть матрица: 1 2 3 4 Как посчитать? (1*4)-(3*2) 2. 1 2 3 4 5 6 7 8 9 (1*5*9) + (2*6*7) + (3*4*8) - (3*5*7) - (2*4*9) - (1*6*8) P.S я вижу закономерность но не знаю как ее описать. |
14.05.2012, 19:36 | #10 | |
Delphi Warrior
Старожил
Регистрация: 15.08.2008
Сообщений: 2,502
|
Цитата:
так есть же http://ru.wikipedia.org/wiki/%D0%9E%...B5%D0%BB%D1%8C выбирайте любой метод!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++ ya.flex-freelance@yandex.ru Icq - 636-954-303 |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Найти матрицу, представляющую собой сумму двух данных матриц | lokomotiv | C# (си шарп) | 0 | 17.12.2011 14:34 |
Подключение двух коммутаторов между собой?? | Makaveli1986 | Помощь студентам | 2 | 21.11.2011 09:45 |
связь пользователей между собой на сайте | строгийЁЖ | PHP | 5 | 05.08.2011 11:22 |
Как сравнить элементы 2 массивов между собой? | DragonionS | Общие вопросы Delphi | 1 | 01.07.2007 21:49 |