![]() |
|
Модераторы: Poseidon |
![]()
|
|
| Гусь |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 13.3.2007 Репутация: нет Всего: нет |
Осущиствите "поворот" матрицы на 90 градусов (первая строка становится последним столбцом и т.д.), на 180 градусов (первая строка становится последней, но элементы этой строки расположены в обратном порядке и т.д.).
|
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 26 Всего: 122 |
вроде так |
|||
|
||||
| Гусь |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 13.3.2007 Репутация: нет Всего: нет |
Большое спасибо))
|
|||
|
||||
| MBo |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 234 Регистрация: 10.6.2002 Репутация: 7 Всего: 18 |
Rodman,
for (i=1;i<N;i++)/*90 gradusov*/ for (j=1;j<N;j++) { tmp=a[i][j]; a[i][j]=a[j][i]; a[j][i]=tmp; } это транспонирование (отражение матрицы относительно главной диагонали) Для поворота на 90 градусов нужно запомнить элемент, и 4 раза перенести элементы, находящиеся на эквивалентном при повороте на (-90) градусов месте, т.е., например. t := A[1,1]; A[1,1] := A[N, 1]; A[N, 1] := A[N,N]; A[N,N] := A[1, N]; A[1,N] := t; При этом нужно обходить в циклах не все ячейки, а четверть. |
|||
|
||||
| Гусь |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 13.3.2007 Репутация: нет Всего: нет |
спсб
|
|||
|
||||
| Гусь |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 13.3.2007 Репутация: нет Всего: нет |
[QUOTE=MBo,13.3.2007, 15:15]Rodman,
for (i=1;i<N;i++)/*90 gradusov*/ for (j=1;j<N;j++) { tmp=a[i][j]; a[i][j]=a[j][i]; a[j][i]=tmp; } это транспонирование (отражение матрицы относительно главной диагонали) Для поворота на 90 градусов нужно запомнить элемент, и 4 раза перенести элементы, находящиеся на эквивалентном при повороте на (-90) градусов месте, т.е., например. t := A[1,1]; A[1,1] := A[N, 1]; A[N, 1] := A[N,N]; A[N,N] := A[1, N]; A[1,N] := t; При этом нужно обходить в циклах не все ячейки, а четверть. А как это записать, чтоб задача полностью решена была. Спасибо заранее Это сообщение отредактировал(а) Гусь - 14.3.2007, 14:34 |
|||
|
||||
| Dov |
|
|||
![]() аСинизатор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: 50 Всего: 88 |
-------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
| Гусь |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 13.3.2007 Репутация: нет Всего: нет |
Не пашет-[C++ Error] Unit1.cpp(19): E2451 Undefined symbol 'endl' , [C++ Error] Unit1.cpp(18): E2451 Undefined symbol 'cout'
|
|||
|
||||
| zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 21 Всего: 92 |
вообщето std::cout и std::endl - фишки из с++. Так что если прога д.б. на Си то меняйте cout на printf, а endl на вывод '\n'. Если можно на цпп то подключайте iostream и стандартное пространство имен. |
|||
|
||||
| Dov |
|
|||
![]() аСинизатор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: 50 Всего: 88 |
Гусь, замени cout на printf(). Ты что, маленький что-ли?
Добавлено @ 17:35 Держи
-------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
| Dov |
|
|||
![]() аСинизатор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: 50 Всего: 88 |
Это без использования дополнительной матрицы, т.е. поворот матрицы осуществляется в ней самой
-------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
| Гусь |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 13.3.2007 Репутация: нет Всего: нет |
спасибо всем, я сам как то умудрился написать рпограмму.(конечно с помощью ваших подсказок и кодов в программе).
Добавлено @ 18:09 Это сообщение отредактировал(а) Гусь - 15.3.2007, 18:06 |
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |