| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Побочная диагональ прямоугольной матрицы |
| Автор: m9yt 21.6.2010, 22:05 |
| Привет всем! Задача: Дана целочисленная прямоугольная матрица. Определить:минимум среди сумм модулей элементов диагоналей , параллельных побочной диагонали матрицы. Задание корректно? Вообще, в прямоугольных матрицах есть диагонали? |
| Автор: neondartal 21.6.2010, 23:53 |
| Матрица m x n Главная диагональ сверху-вниз слева-направо, побочная наоборот. [ a11 a12 a13 a14] [ a21 a22 a23 a24] [ a31 a32 a33 a34] [ a41 a42 a43 a44] Главная a11 a22 a33 a44, побочная a14 a23 a32 a41, параллельные побочной - диагональные ряды - это то что тебе надо. берешь их элементы и суммируешь модули элементов. Например здесь 6 рядов, параллельных побочной и 6 рядов параллельных главной. Но это задание из высшей математики. Вобщем - первый ряд (|a| - будет модулем), тогда 1 ряд sum1 = |a13| + |a22| +|a31| 2 ряд sum2 = |a12| + |a21| 2 ряд sum3 = |a11| 4 ряд sum4 = |a24| + |a33| +|a42| 5 ряд sum5 = |a34| + |a43| 6 ряд sum6 = |a44| result = min(ряд1, ряд2 ...) Посмортри - на сходства - можно формулы вывести. Это для квадартной матрицы, для неквадратной будет тоже самое, главное правильно выделить диагональ, правда, не помню - с какого элемента начинается побочная, с нижнего или с верхнего угла, чтобы правильно выделить побочную диагональ, не обессудте |
| Автор: Игорь1024 29.6.2010, 10:13 |
| To my mind it isn't complicated task. Write 2 or 3 functions for 1) showing dioginal; 2) showing additional rows; 3) adding modules of numbers; It's easy, isn't it ? Not High Math , just work with arrays. |
| Автор: neondartal 2.7.2010, 00:57 |
| Да ладно - вопрос был про диагональ и матрицы, а это из курса высшей математики - уточнил где смотреть. Вопрос был не про массивы. Давай точно скажу - раздел Высшей Математики - Теория Матриц - ничего сложного - массивы, - копни глубже и сам увидишь - что это в школе - не дают. |