Главная страница
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
14-92704
bassa
2002-10-08 14:30
2002.10.28
IBM


1-92489
Mav
2002-10-18 12:35
2002.10.28
Работа с булевыми выражениями


14-92654
grifon
2002-10-07 10:02
2002.10.28
Добрый пров


3-92409
Maik
2002-10-07 18:25
2002.10.28
Последовательное выполнение Select


8-92616
toma2
2002-07-02 20:22
2002.10.28
Canvas