![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 06.10.2009
Сообщений: 9
|
![]()
Собственно нужно поменять элементы равные нулю на элементы, симметричные данным относительно главной диагонали.
Вот мой код: Код:
![]() |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 18.11.2008
Сообщений: 94
|
![]()
Я бы реализовал замену так :
Код:
Последний раз редактировалось anGeee; 11.11.2009 в 21:08. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 06.10.2009
Сообщений: 9
|
![]()
Все, всем спс, я решил задачу:
Код:
Код:
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 18.11.2008
Сообщений: 94
|
![]()
Потому что я шел по элементам матрицы, которые выше главной диагонали.
Вот мне интересно, какой результат выдаст ваша программа, обработав матрицу 0 0 0 1 0 0 1 2 0 1 2 3 1 2 3 4 Почему-то мне кажется, что ничего не поменяется... |
![]() |
![]() |
![]() |
#5 |
Регистрация: 06.10.2009
Сообщений: 9
|
![]()
anGeee, так правильно, ничего и не должно поменяться!
Вот задание: Поменять местами элементы двумерного массива равные нулю на соответствующие элементы, расположенные симметрично относительно главной диагонали. У вас все нули и так симметричны..... |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 18.11.2008
Сообщений: 94
|
![]()
Ох ты ж блин, я имел в виду матрицу
1 0 0 0 1 2 0 0 1 2 3 0 1 2 3 4 Такую матрицу ваш алгоритм поменяет ? ПС Что-то со мной не то - думаю одно, а пишу другое ) |
![]() |
![]() |
![]() |
#7 |
Регистрация: 06.10.2009
Сообщений: 9
|
![]()
мде.... не поменял... а где ошибка? что то я вообще не понимаю... объясните пожалуйста
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 18.11.2008
Сообщений: 94
|
![]()
Просто вы просматриваете все элементы матрицы, при этом меняя их.
То есть, например, у вас элемент (1,2) равен нулю, а элемент (2,1) равен, например, 5. Вот вы в первый раз встретили элемент (1,2), увидели там ноль и поменли его с элементом (2,1). Теперь (2,1) равен нулю. Однако, вскоре вы добираетесь до элемента (2,1) - он равен нулю.. И вы меняете его обратно.. Попробуйте мой вариант. Там я прохожу по элементам ниже главной диагонали, просматривая сразу два элемента (i,j) и (j,i) - если один из них нуль, то меняем их местами. |
![]() |
![]() |
![]() |
#9 |
Регистрация: 06.10.2009
Сообщений: 9
|
![]()
Спасиб огромное, работает!
Код:
Код:
Код:
anGeee, спасиб огромное! Последний раз редактировалось HIP-H0P; 11.11.2009 в 23:13. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Дана матрица 6х4, найти и выдать на экран строки содержащие нулевые элементы | >>arty<< | Помощь студентам | 19 | 04.07.2009 13:59 |
Удалять нулевые эл. массива | quartzz | Общие вопросы C/C++ | 6 | 28.05.2009 13:44 |
поменять местами | научите | Паскаль, Turbo Pascal, PascalABC.NET | 13 | 08.01.2009 13:43 |
ПОменять значения местами | qip2005 | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 24.12.2008 23:38 |
Нулевые элементы в матрицах | ufoman | Помощь студентам | 5 | 26.04.2007 20:08 |