Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
14-92689
Anatoly Podgoretsky
2002-10-06 12:01
2002.10.28
Наташенька (nata610@pisem.net) с днем рождения


14-92701
PavelOKES
2002-10-08 09:52
2002.10.28
ADO


1-92450
Dasha
2002-10-18 05:17
2002.10.28
RX-Library


3-92347
Sergant
2002-10-06 05:00
2002.10.28
Не могу создать/добавить индекс в Firebird!!!


4-92805
Rainmaker
2002-09-16 13:53
2002.10.28
Цветная TButton




   Наверх