1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| lacomca |
28.03.2006 10:24
Сообщение
#1
|
|
Группа: Пользователи Сообщений: 7 Пол: Женский Реальное имя: Ольга Репутация: 0 |
Транспонировать матрицу A=(d(ij))^m*m, где m<=10. Проверить является ли она симметричной, если да, то переменной Q присвоить 1, в противном случае - 0.
||0,5 1 2|| A= ||1 3,2 1|| ||2 1 0,5|| Квадратная матрица называется симметричной матрицей, если ее элементы, симметричные относительно главной диагонали, равны между собой, т.е. aij = aji для всех i, j. Матрица является симметричной, если она совпадает со своей транспонированной матрицей (т.е. A = A'). Другими словами, нижний треугольник квадратной матрицы является "зеркальным отражением" верхнего треугольника. |
![]() ![]() |
| Ozzя |
28.03.2006 10:41
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: 16 |
http://forum.pascalnet.ru/index.php?s=&sh...indpost&p=28387
Цитата Function matrixTranspose(a: TMatrix): PTMatrix; Функция возвращает указатель на созданную в динамической памяти матрицу, являющуюся транспонированной матрицей A, т.е. строки исходной матрицы становятся столбцами и наоборот (или nil при невозможности выделения памяти) Цитата Матрица является симметричной, если она совпадает со своей транспонированной матрицей (т.е. A = A'). Цитата Квадратная матрица называется симметричной матрицей, если ее элементы, симметричные относительно главной диагонали, равны между собой, т.е. aij = aji для всех i, j. Function IsMatrixSimmetric (A : TMatrix) : boolean;
var
i,j :integer;
begin
IsMatrixSimmetric:=True;
for i:=1 to M do
for i:=1 to M do
if a[i,j] <> a[j,i] then
begin
IsMatrixSimmetric:=False;
Break;
end;
end;
|
lacomca Транспонировать матрицу 28.03.2006 10:24
lacomca Спасибо за изящное решение.
Но я только на первом ... 28.03.2006 10:43
Ozzя Спасибо за изящное решение.
Но я только на первом ... 28.03.2006 10:50
мисс_граффити Зачем нам целая вспомогательная матрица?
procedur... 28.03.2006 16:31
lacomca составить програму под эту задачу через процедуры.... 1.04.2006 16:14
volvo Просто у тебя изменения в матрицах НЕ передаются в... 1.04.2006 16:26
lacomca если я опишу simmetria через функцию там надо буде... 1.04.2006 16:28
volvo Вместо
simmetria(a,at,m1,q);
simmetria(b,bt,m2,q);... 1.04.2006 16:36
lacomca спасибо большое. я просто еще ни разу не записывал... 1.04.2006 16:39
volvo function simmetria (z,y:matr; m:integer): integer;... 1.04.2006 16:41
lacomca с функцией все получилось, спасибо. но, видимо, са... 1.04.2006 16:48
volvo Ты сделала то, что я сказал в посте №7 с процедура... 1.04.2006 16:55
lacomca :good: спасибо большое все заработало.не увидела п... 1.04.2006 17:00![]() ![]() |
|
Текстовая версия | 15.11.2025 7:28 |