Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.28;
Скачать: CL | DM;

Вниз

Очень надо!!! Придумайте хоть алгоритм.   Найти похожие ветки 

 
incognito2 ©   (2002-10-06 20:02) [0]

Для матрицы размером NxN необходимо выполнить N-1 поворотов по следующей схеме.
Шаг 1: В исходной матрице берем подматрицу размером 2x2 в левом верхнем углу. В об-щепринятых обозначениях это будет матрица:
a11 a12
a21 a22
Поворачиваем ее на 90° по часовой стрелке. Остальная часть исходной матрицы не меняется.
Шаг 2: В полученной матрице снова берем подматрицу в левом верхнем углу, но уже раз-мером 3x3. Теперь это стала матрица:
a21 a11 a13
a22 a12 a23
a31 a32 a33

Поворачиваем ее на 90°, но уже против часовой стрелки, не трогая остальные эле-менты матрицы.
Шаги 3…N-1: Каждый раз на единицу увеличиваем размер подматрицы и меняем направле-ние её поворота, пока не произведем поворот всей матрицы размером NxN. На нечетном ша-ге поворот выполняется по часовой стрелке, а на четном - против.
Требуется написать программу на паскале, которая находит элементы главной диагонали матрицы, полученной в результате вращения заданной матрицы размером NxN.
Например: дана матрица
1 2 3
4 5 6
7 8 9
главная диагональ 3 2 7
Проблема в том, что иходная матрица берется из файла
т. к. 2<N<1000 то с массивом не получится.


 
TTCustomDelphiMaster ©   (2002-10-06 20:39) [1]

Вы знакомы с понятиями динамический массив и рекурсия?



Страницы: 1 вся ветка

Текущий архив: 2002.10.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-92473
S
2002-10-18 09:07
2002.10.28
Регистрация dll


3-92377
Cossys
2002-10-04 17:37
2002.10.28
Динамически добавлять поле к запросу


4-92813
Alexander
2002-09-17 14:36
2002.10.28
Как можно открыть свойства заданного принтера?


4-92784
Denvor
2002-09-14 03:27
2002.10.28
Как кликнуть по Radiobutton в дочернем окне чужого приложения?


14-92655
Cr@sh
2002-10-06 10:44
2002.10.28
Где можно найти хороший бесплатный форум?